Hi Inigo,

I’m a committer on Apache Nifi as well as PLC4X, I would be happy to review 
your processor.
If I understand what you are saying correctly, you have a single processor 
which supports record writing output?

plc4x -> records

And that you have, for configuration purposes for that processor created 
support on a per protocol basis for configuration and validation?

If there is per protocol configuration / validation etc, it may be better to 
have a base processor, and derived processors per protocol to handle those 
differences.

I look forward to seeing the code.


> On Apr 21, 2021, at 04:05, Iñigo Angulo <[email protected]> wrote:
> 
> Hi all, 
> 
> I am writing as we have been working on the Apache Nifi integration part of 
> the project. We have created a Record oriented processor for reading PLC 
> data. It is based on the previous existing SourceProcessor, but works with 
> records, using a Nifi Writer (such as Avro, Json, and so on) to write data on 
> flowfiles content. 
> 
> We updated the code on our fork with the actual PLC4X git repo about 2 weeks 
> ago, and tested it reading values with S7 from a S7-1200 CPU from Nifi. Also, 
> one of our customers has recently started to use it for validation. 
> 
> Currently, it works with S7 and Modbus over TCP. This is because we had to 
> write some classes to map connectionString and variableList properties 
> (sintax) of the processor to the actual protocol, to be able to build then 
> avro schema for output flowfile, taking into account variable datatypes, etc. 
> We only did this for S7 and Modbus. I am sure that there is a better way to 
> do this, so at this point you maybe could take a look to find the best 
> solution and avoid needing to do this mapping. 
> 
> If you find this useful, we could do a pull request to the main PLC4x repo. 
> Let us know what you think. 
> 
> best regards, 
> iñigo 
> 
> ----------------------------------------- 
> Iñigo Angulo 
> 
> ZYLK.net :: consultoría.openSource 
> telf.: 747412337 
> Ribera de Axpe, 11 
> Edificio A, modulo 201-203 
> 48950 Erandio (Bizkaia) 
> ----------------------------------------- 

Reply via email to