Perfect ;-)

Am 18.04.19, 11:34 schrieb "Julian Feinauer" <[email protected]>:

    Hi Chris,
    
    indeed.
    So lets simply use the terms opc-ua server or bridge and opc-ua client : )
    Do you agree?
    
    Julian
    
    Am 18.04.19, 11:32 schrieb "Christofer Dutz" <[email protected]>:
    
        Hi Julian,
        
        That's what I mentioned in the other email.
        We have to be careful with the term OPC-UA Support and differentiate 
between OPC-UA Server and OPC-UA Client (PLC4X opc-ua client)
        I was talking about a OPC-UA Server ... you seem to be about a client. 
For the Server we wouldn't need the feature you are mentioning.
        
        Chris
        
        
        Am 18.04.19, 11:27 schrieb "Julian Feinauer" 
<[email protected]>:
        
            Hi Chris,
            
            there are two ways.. and you are doing the other one, I think : )
            You are talking about the OPC UA interface for other drivers, or?
            There, you do that implicitly by your config, so this is fine.
            
            But, especially when we start to implement an OPC UA Driver, this 
will fall on our feet : )
            
            Julian
            
            Am 18.04.19, 11:19 schrieb "Christofer Dutz" 
<[email protected]>:
            
                Hi Julian
                
                I don't agree that we have to do the other first.
                Right now I was thinking about building a configuration that 
could offer a complex type structure to OPC-UA clients but map simple Addresses 
to elements of such a tree. 
                So I think we could start without refactoring.
                
                Chris
                
                Am 18.04.19, 09:15 schrieb "Julian Feinauer" 
<[email protected]>:
                
                    Hi Markus,
                    
                    I agree with you.
                    And, as one can see in my mail.. there are multple efforts 
which are currently going.
                    So perhaps, if we focus a bit, we should reach first 
results pretty fast.
                    But I think one necessity is a refactoring to a complex 
type model.
                    I will file a Jira for that.
                    
                    Julian
                    
                    Am 18.04.19, 09:06 schrieb "Markus Sommer" 
<[email protected]>:
                    
                        Hi all,
                        
                        I was at the Hannovermesse and the industry clearly 
relies on OPC UA. If PLC4x could realize a very fast OPC UA, this would be a 
massive advantage over other manufacturers.
                        
                        Best regards
                        
                        Markus
                        
                        Freundliche Grüße
                        
                        Markus Sommer
                        Geschäftsführer
                        
                        isb innovative software businesses GmbH
                        Otto-Lilienthal-Strasse 2
                        D - 88046 Friedrichshafen
                        
                        Tel.:    +49 (0) 7541 3834-14
                        Mob:  +49 (0) 171 537 8437
                        Fax:     +49 (0) 7541 3834-20
                        E-Mail: [email protected]
                        Web: www.isb-fn.de 
                        
                        Geschäftsführer: Markus Sommer, Thomas Zeler
                        Sitz: Friedrichshafen
                        
                        Registergericht: Amtsgericht Ulm HRB-Nr. 631624
                        Important Note: This e-mail and any attachments are 
confidential, may contain trade secrets and may well also be legally privileged 
or otherwise protected from disclosure. If you have received it in error, you 
are on notice of its status. 
                        Please notify us immediately by reply e-mail and then 
delete his e-mail and any attachment from your system. If you are not the 
intended recipient please understand that you must not copy this e-mail or any 
attachments or disclose the contents to any other person. Thank you.
                        
                        
                        -----Ursprüngliche Nachricht-----
                        Von: Julian Feinauer <[email protected]> 
                        Gesendet: Mittwoch, 17. April 2019 09:07
                        An: [email protected]
                        Betreff: [DISCUSS] The State and Future of PLC4X
                        
                        Hi all,
                        
                        as we had a lot of non-technical discussions and topics 
the last time (the coming of age of a software project, I guess) it’s time for 
us to go back to the real fun part and do technical shit.
                        I had a lot of discussions (on list and off list) with 
several people like Chris, Matthias, Björn, Tim and others and wanted to share 
my thoughts on the future of PLC4X as I see it (from a solely technical 
perspective).
                        
                        Currently, I see several “fronts” or centers of 
activity (or where I think we should spend it).
                        
                          *   Language adoption – We should define and deliver 
APIs and bindings for other languages to bring what we currently have to other 
people and other communities. The activities we have there are currently (from 
my head): Markus and C++, Björn who wanted to investigate C# and the “Interop 
Server” which I played around a bit (in fact, Matthias made a python binding 
yesterday…)
                          *   Driver Generation – This is a well-known Topic 
which is currently driven by Chris. This is a large topic, which includes
                             *   Model Generation (currently dfdl and state-xml)
                             *   Templates for many languages (will partially 
derive from above)
                             *   A build process, to wire both together
                             *   Some kind of Test Suite to check the correct 
generation of drivers
                             *   Automated Documentation / Spec Generation (!!
                          *   Ecosystem / Tools – We have a set of tools that 
are based on PLC4X and which enable to do things which where unthinkable 
before. Some are
                             *   Scraper – A tool to scrape massive amounts of 
data from multiple PLCs based on a yml configuration, this is mostly driven by 
Tim
                             *   OPC UA Server – Yet to come. Maps OPC UA 
requests to PLC4X requests which then go native to the PLCs. Matthias started 
some work on this, Tim looked over it and I think Chris plans on implementing 
something here also
                             *   We had multiple discussions about tools that 
“guess” something about locations of variables or their types. Chris brought 
that up yesterday and plans to do something there, Matthias and I discussed 
this several times and we plan to also do something with one or two students 
there
                          *   New programming models – As plc4x is open, it 
allows us to implement new programming models on top of it. The best example I 
can give is OPM, the JPA equivalent of PLC4X. The idea is to work with POJOs 
and annotations and EntityManagers (as Beans) and have a “type safe” and 
Business-esque way to communicate with PLCs.
                        
                        Here I see a lot of potential and possible next steps 
could be (discussed by Matthias and me)
                        
                             *   “Richer” Typesystem (not just primitives and 
Arrays as currently) which covers complex objects
                             *   Mapping of complex objects from POJOs to PLC 
segments (Like structs in S7 or ADS)
                             *   Auto-generation of annotated POJOs from PLC 
programs (much like JPA or the C# ORM does that based on an existing database). 
This could be a “killer-feature” as it would really allow type-safe end to end 
communication with the plc with zero plc specific knowledge
                        
                        Other Topics in this area that can be named are
                        
                             *   A connection pool to share / reuse connections 
for efficiency (which was implemented by Sebastian and is absolutely crucial 
for us!)
                             *   A central monitoring component (similar to how 
a Webserver monitors each side access and the results and latencies and so..), 
I am currently working on this and hope to provide a PR soon
                        
                        Of course, all of this is solely based on my personal 
opinion or things that came out in discussions with other involved people.
                        For me, this structure makes sense and perhaps it helps 
us to “broaden” our scope a bit from the initial focus (drivers, drivers, 
drivers) to the new picture which evolved over the last to years.
                        
                        Of course, feel free to agree, disagree or participate 
with other opinions.
                        
                        Julian
                        
                        PS.: I could offer to bring this in a more 
“presentable” form and prepare a short “overview” talk about this for the next 
meetup, if interesting
                        
                    
                    
                
                
            
            
        
        
    
    

Reply via email to