You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@streampipes.apache.org by Johannes Tex <te...@apache.org> on 2020/01/09 18:07:59 UTC

Re: AW: Add support for multiple properties in PLC4X S7 Adapter

Hi,

support for multiple properties (CollectionProperty) has been implemented. I also added the horizontal rendering property for StaticPropertyGroup and SelectionStaticProperty. Currently all SelectionStaticProperty will be renderd horizontal (Drop down menu), because we had problems with deserialization (UI) of the horizontal property if a SelectionStaticProperty is part of a StaticPropertyGroup. Maybe someone knows what the problem could be? (I opened an Issue STREAMPIPES-54)

However the CollectionProperty is already used by the ‘PLC4X S7’ Adapter. Your feedback is welcome :) 

Johannes

On 2019/11/21 07:15:45, "Johannes Tex" <jo...@web.de> wrote: 
> Hi,
> 
> I have started to implement the new feature!
> 
> At the StaticPropertyGroup Property I will add a new boolean property
> *horizontalRendering*. I also will do this for the OneOfStaticProperty
> (Single-Value-Selection), in this case horizontal rendering means that a
> dropdown is displayed instead of a vertical list of radio buttons.
> 
> 
> Johannes
> 
> -----Ursprüngliche Nachricht-----
> Von: Dominik Riemer [mailto:riemer@fzi.de] 
> Gesendet: Samstag, 16. November 2019 13:15
> An: dev@streampipes.apache.org
> Betreff: Re: Add support for multiple properties in PLC4X S7 Adapter
> 
> Hi Philipp,
> 
> 
> 
> that's looking great!
> 
> To implement your mockup, we need to extend the StaticPropertyGroup to allow
> horizontal rendering of group members. We can add this along with a some
> optimizations to the SDK's methods to create and extract static properties
> (Chris also mentioned that complex nested static property definitions can
> become quite complicated to model if you're not used to it).
> 
> 
> 
> Dominik
> 
> 
> 
> On 2019/11/16 09:48:24, Philipp Zehnder
> <ze...@fzi.de>> wrote:
> 
> > Hi,
> 
> >
> 
> >
> 
> > the first version of the of the PLC4X S7 adapter just supports to
> configure one item.
> 
> > A user provides the IP address, the runtimeName of the property, and the
> node type as shown in the image:
> 
> >
> 
> >
> 
> > In the next version it should be possible to select multiple items, like:
> 
> >
> 
> >
> 
> >
> 
> >
> 
> > To do that we have to extend the Typescript model to support
> CollectionStaticProperty and we also have to implement the UI component for
> that.
> 
> >
> 
> > Is it possible to have a StaticPropertyGroup in this collection that
> contains the Static properties for runtime name, node and data type?
> 
> >
> 
> > Does anyone have another solution how to display the configurations to the
> user or are there any other configurations required?
> 
> >
> 
> > Cheers,
> 
> > Philipp
> 
> >
> 
> >
> 
> >
> 
> >
> 
> >
> 
> >
> 
> >
> 
> >
> 
> >
> 
> >
> 
> >
> 
> >
> 
> >
> 
> 

Re: Add support for multiple properties in PLC4X S7 Adapter

Posted by Philipp Zehnder <ze...@apache.org>.
Hi,

thank you for your answer. Do I understand it correctly that I have to call the mock driver from my code directly? So I have to define the return values of the mock driver.

Is there a way (e.g. an external service in a docker container) containing an example PLC, running based on the mock driver?
So that I just have to start the docker container running the mock service. In my code I would then connect to the Mock PLC via:

this.plcConnection= new PlcDriverManager().getConnection(“mock://DOCKER_SERVICE_NAME");

Cheers,
Philipp


> On 15. Jan 2020, at 15:51, Julian Feinauer <j....@pragmaticminds.de> wrote:
> 
> Hi,
> 
> sorry fort he late reply...
> What one can do using the Mock Driver I implemented is to ensure that your code works by seeing if requests are sent to PLCs and received.
> You find examples of the usage (especially in tests) in the OPM Module and in the Scraper of PLC4X (just do a text search for "mock:" (as that’s the prefix for that driver)).
> Doing that you can exactly validate your implementation and then you don’t have to test more and just rely on PLC4X that their shit works (....) __
> 
> Julian
> 
> Am 12.01.20, 21:50 schrieb "Philipp Zehnder" <ze...@fzi.de>:
> 
>    Hi,
> 
>    this is a very cool feature. Now it is possible to read multiple values from a S7 and process them as events.
> 
>    The next steps should be to test the S7 adapter in multiple scenarios and implement adapters for further PLCs.
>    Do you have any ideas how we could test adapters for other PLCs?  Currently just have a S7 for testing?
> 
>    Also Chris & Julian it would be great if you could give us some feedback on the integration. Is there anything we could improve?
> 
>    Cheers,
>    Philipp
> 
> 
>> On 9. Jan 2020, at 19:07, Johannes Tex <te...@apache.org> wrote:
>> 
>> Hi,
>> 
>> support for multiple properties (CollectionProperty) has been implemented. I also added the horizontal rendering property for StaticPropertyGroup and SelectionStaticProperty. Currently all SelectionStaticProperty will be renderd horizontal (Drop down menu), because we had problems with deserialization (UI) of the horizontal property if a SelectionStaticProperty is part of a StaticPropertyGroup. Maybe someone knows what the problem could be? (I opened an Issue STREAMPIPES-54)
>> 
>> However the CollectionProperty is already used by the ‘PLC4X S7’ Adapter. Your feedback is welcome :) 
>> 
>> Johannes
>> 
>> On 2019/11/21 07:15:45, "Johannes Tex" <jo...@web.de> wrote: 
>>> Hi,
>>> 
>>> I have started to implement the new feature!
>>> 
>>> At the StaticPropertyGroup Property I will add a new boolean property
>>> *horizontalRendering*. I also will do this for the OneOfStaticProperty
>>> (Single-Value-Selection), in this case horizontal rendering means that a
>>> dropdown is displayed instead of a vertical list of radio buttons.
>>> 
>>> 
>>> Johannes
>>> 
>>> -----Ursprüngliche Nachricht-----
>>> Von: Dominik Riemer [mailto:riemer@fzi.de] 
>>> Gesendet: Samstag, 16. November 2019 13:15
>>> An: dev@streampipes.apache.org
>>> Betreff: Re: Add support for multiple properties in PLC4X S7 Adapter
>>> 
>>> Hi Philipp,
>>> 
>>> 
>>> 
>>> that's looking great!
>>> 
>>> To implement your mockup, we need to extend the StaticPropertyGroup to allow
>>> horizontal rendering of group members. We can add this along with a some
>>> optimizations to the SDK's methods to create and extract static properties
>>> (Chris also mentioned that complex nested static property definitions can
>>> become quite complicated to model if you're not used to it).
>>> 
>>> 
>>> 
>>> Dominik
>>> 
>>> 
>>> 
>>> On 2019/11/16 09:48:24, Philipp Zehnder
>>> <ze...@fzi.de>> wrote:
>>> 
>>>> Hi,
>>> 
>>>> 
>>> 
>>>> 
>>> 
>>>> the first version of the of the PLC4X S7 adapter just supports to
>>> configure one item.
>>> 
>>>> A user provides the IP address, the runtimeName of the property, and the
>>> node type as shown in the image:
>>> 
>>>> 
>>> 
>>>> 
>>> 
>>>> In the next version it should be possible to select multiple items, like:
>>> 
>>>> 
>>> 
>>>> 
>>> 
>>>> 
>>> 
>>>> 
>>> 
>>>> To do that we have to extend the Typescript model to support
>>> CollectionStaticProperty and we also have to implement the UI component for
>>> that.
>>> 
>>>> 
>>> 
>>>> Is it possible to have a StaticPropertyGroup in this collection that
>>> contains the Static properties for runtime name, node and data type?
>>> 
>>>> 
>>> 
>>>> Does anyone have another solution how to display the configurations to the
>>> user or are there any other configurations required?
>>> 
>>>> 
>>> 
>>>> Cheers,
>>> 
>>>> Philipp
>>> 
>>>> 
>>> 
>>>> 
>>> 
>>>> 
>>> 
>>>> 
>>> 
>>>> 
>>> 
>>>> 
>>> 
>>>> 
>>> 
>>>> 
>>> 
>>>> 
>>> 
>>>> 
>>> 
>>>> 
>>> 
>>>> 
>>> 
>>>> 
>>> 
>>> 
> 
> 
> 


Re: Add support for multiple properties in PLC4X S7 Adapter

Posted by Julian Feinauer <j....@pragmaticminds.de>.
Hi,

sorry fort he late reply...
What one can do using the Mock Driver I implemented is to ensure that your code works by seeing if requests are sent to PLCs and received.
You find examples of the usage (especially in tests) in the OPM Module and in the Scraper of PLC4X (just do a text search for "mock:" (as that’s the prefix for that driver)).
Doing that you can exactly validate your implementation and then you don’t have to test more and just rely on PLC4X that their shit works (....) __

Julian

Am 12.01.20, 21:50 schrieb "Philipp Zehnder" <ze...@fzi.de>:

    Hi,
    
    this is a very cool feature. Now it is possible to read multiple values from a S7 and process them as events.
    
    The next steps should be to test the S7 adapter in multiple scenarios and implement adapters for further PLCs.
    Do you have any ideas how we could test adapters for other PLCs?  Currently just have a S7 for testing?
    
    Also Chris & Julian it would be great if you could give us some feedback on the integration. Is there anything we could improve?
    
    Cheers,
    Philipp
    
    
    > On 9. Jan 2020, at 19:07, Johannes Tex <te...@apache.org> wrote:
    > 
    > Hi,
    > 
    > support for multiple properties (CollectionProperty) has been implemented. I also added the horizontal rendering property for StaticPropertyGroup and SelectionStaticProperty. Currently all SelectionStaticProperty will be renderd horizontal (Drop down menu), because we had problems with deserialization (UI) of the horizontal property if a SelectionStaticProperty is part of a StaticPropertyGroup. Maybe someone knows what the problem could be? (I opened an Issue STREAMPIPES-54)
    > 
    > However the CollectionProperty is already used by the ‘PLC4X S7’ Adapter. Your feedback is welcome :) 
    > 
    > Johannes
    > 
    > On 2019/11/21 07:15:45, "Johannes Tex" <jo...@web.de> wrote: 
    >> Hi,
    >> 
    >> I have started to implement the new feature!
    >> 
    >> At the StaticPropertyGroup Property I will add a new boolean property
    >> *horizontalRendering*. I also will do this for the OneOfStaticProperty
    >> (Single-Value-Selection), in this case horizontal rendering means that a
    >> dropdown is displayed instead of a vertical list of radio buttons.
    >> 
    >> 
    >> Johannes
    >> 
    >> -----Ursprüngliche Nachricht-----
    >> Von: Dominik Riemer [mailto:riemer@fzi.de] 
    >> Gesendet: Samstag, 16. November 2019 13:15
    >> An: dev@streampipes.apache.org
    >> Betreff: Re: Add support for multiple properties in PLC4X S7 Adapter
    >> 
    >> Hi Philipp,
    >> 
    >> 
    >> 
    >> that's looking great!
    >> 
    >> To implement your mockup, we need to extend the StaticPropertyGroup to allow
    >> horizontal rendering of group members. We can add this along with a some
    >> optimizations to the SDK's methods to create and extract static properties
    >> (Chris also mentioned that complex nested static property definitions can
    >> become quite complicated to model if you're not used to it).
    >> 
    >> 
    >> 
    >> Dominik
    >> 
    >> 
    >> 
    >> On 2019/11/16 09:48:24, Philipp Zehnder
    >> <ze...@fzi.de>> wrote:
    >> 
    >>> Hi,
    >> 
    >>> 
    >> 
    >>> 
    >> 
    >>> the first version of the of the PLC4X S7 adapter just supports to
    >> configure one item.
    >> 
    >>> A user provides the IP address, the runtimeName of the property, and the
    >> node type as shown in the image:
    >> 
    >>> 
    >> 
    >>> 
    >> 
    >>> In the next version it should be possible to select multiple items, like:
    >> 
    >>> 
    >> 
    >>> 
    >> 
    >>> 
    >> 
    >>> 
    >> 
    >>> To do that we have to extend the Typescript model to support
    >> CollectionStaticProperty and we also have to implement the UI component for
    >> that.
    >> 
    >>> 
    >> 
    >>> Is it possible to have a StaticPropertyGroup in this collection that
    >> contains the Static properties for runtime name, node and data type?
    >> 
    >>> 
    >> 
    >>> Does anyone have another solution how to display the configurations to the
    >> user or are there any other configurations required?
    >> 
    >>> 
    >> 
    >>> Cheers,
    >> 
    >>> Philipp
    >> 
    >>> 
    >> 
    >>> 
    >> 
    >>> 
    >> 
    >>> 
    >> 
    >>> 
    >> 
    >>> 
    >> 
    >>> 
    >> 
    >>> 
    >> 
    >>> 
    >> 
    >>> 
    >> 
    >>> 
    >> 
    >>> 
    >> 
    >>> 
    >> 
    >> 
    
    


Re: Add support for multiple properties in PLC4X S7 Adapter

Posted by Philipp Zehnder <ze...@fzi.de>.
Hi,

this is a very cool feature. Now it is possible to read multiple values from a S7 and process them as events.

The next steps should be to test the S7 adapter in multiple scenarios and implement adapters for further PLCs.
Do you have any ideas how we could test adapters for other PLCs?  Currently just have a S7 for testing?

Also Chris & Julian it would be great if you could give us some feedback on the integration. Is there anything we could improve?

Cheers,
Philipp


> On 9. Jan 2020, at 19:07, Johannes Tex <te...@apache.org> wrote:
> 
> Hi,
> 
> support for multiple properties (CollectionProperty) has been implemented. I also added the horizontal rendering property for StaticPropertyGroup and SelectionStaticProperty. Currently all SelectionStaticProperty will be renderd horizontal (Drop down menu), because we had problems with deserialization (UI) of the horizontal property if a SelectionStaticProperty is part of a StaticPropertyGroup. Maybe someone knows what the problem could be? (I opened an Issue STREAMPIPES-54)
> 
> However the CollectionProperty is already used by the ‘PLC4X S7’ Adapter. Your feedback is welcome :) 
> 
> Johannes
> 
> On 2019/11/21 07:15:45, "Johannes Tex" <jo...@web.de> wrote: 
>> Hi,
>> 
>> I have started to implement the new feature!
>> 
>> At the StaticPropertyGroup Property I will add a new boolean property
>> *horizontalRendering*. I also will do this for the OneOfStaticProperty
>> (Single-Value-Selection), in this case horizontal rendering means that a
>> dropdown is displayed instead of a vertical list of radio buttons.
>> 
>> 
>> Johannes
>> 
>> -----Ursprüngliche Nachricht-----
>> Von: Dominik Riemer [mailto:riemer@fzi.de] 
>> Gesendet: Samstag, 16. November 2019 13:15
>> An: dev@streampipes.apache.org
>> Betreff: Re: Add support for multiple properties in PLC4X S7 Adapter
>> 
>> Hi Philipp,
>> 
>> 
>> 
>> that's looking great!
>> 
>> To implement your mockup, we need to extend the StaticPropertyGroup to allow
>> horizontal rendering of group members. We can add this along with a some
>> optimizations to the SDK's methods to create and extract static properties
>> (Chris also mentioned that complex nested static property definitions can
>> become quite complicated to model if you're not used to it).
>> 
>> 
>> 
>> Dominik
>> 
>> 
>> 
>> On 2019/11/16 09:48:24, Philipp Zehnder
>> <ze...@fzi.de>> wrote:
>> 
>>> Hi,
>> 
>>> 
>> 
>>> 
>> 
>>> the first version of the of the PLC4X S7 adapter just supports to
>> configure one item.
>> 
>>> A user provides the IP address, the runtimeName of the property, and the
>> node type as shown in the image:
>> 
>>> 
>> 
>>> 
>> 
>>> In the next version it should be possible to select multiple items, like:
>> 
>>> 
>> 
>>> 
>> 
>>> 
>> 
>>> 
>> 
>>> To do that we have to extend the Typescript model to support
>> CollectionStaticProperty and we also have to implement the UI component for
>> that.
>> 
>>> 
>> 
>>> Is it possible to have a StaticPropertyGroup in this collection that
>> contains the Static properties for runtime name, node and data type?
>> 
>>> 
>> 
>>> Does anyone have another solution how to display the configurations to the
>> user or are there any other configurations required?
>> 
>>> 
>> 
>>> Cheers,
>> 
>>> Philipp
>> 
>>> 
>> 
>>> 
>> 
>>> 
>> 
>>> 
>> 
>>> 
>> 
>>> 
>> 
>>> 
>> 
>>> 
>> 
>>> 
>> 
>>> 
>> 
>>> 
>> 
>>> 
>> 
>>> 
>> 
>>