Ideas for Summer of Code Projects:

  • Complete the DBF Support:

Currently the DBF Driver laks support of updating the MDX Files. Also Write support is not included. (nly verry verry Basic). So a Student should implement a full DBF support. Maybe within this step, the DBF support should be removed from the lib and implemented in a own Codeplex project. But we should stay sure that in the DBF Stack no Reflection.Emit is used, because the Lib should also run under Monotouch. Zadera started with this, but this is not working at the Moment.
At the end, the DBF engine should be able to Recreate the MDX File after a change in the DBF. But also the Lib should be able to use the MDX files (no Idea how at the Moment) for faster Dataaccess. Maybe also LINQ could be implemented?

Mentor: jogibear9988

  • Implement AWL to MC7 support:

Currently only the other way is implemented. The Lib should be able to convert a List of S7FunctionBlockRow Cmmands to MC7 Bytecode. In this way, also the conversation of Calls to the Basic AWL Commands should be done.

Mentor: jogibear9988

  • Implement write support to S7 Projects:

The Lib should be able to save Blocks to Step7 Projects. For this more of the Fields of the Baustein.dbf have to be anlyzed, and we should be able to Generate the DBF Entrys from CSharp classes. At the moment only the Way DBF->CSharp Classes is implemented.

Mentor: jogibear9988

  • Implement "libnodave" natively in DotNet

The Lib uses libnodave in a modified Version via PInvoke. It would be nicer if all the functionality would be implemented in plain csharp in a Object orientated way. I think many parts of the code in libnodave could be used (mostly the byte sequences to build the telegrams), but there is also a lot of work to do. It also would be nice if the lib then get more asynchronous, so we start e request, go on, and get a callback when data is there. There is a little bit of starting code in the lib for this, but much to do.
Then also new features could be implemented: There exist functions in the S7 wich push data to a Partner, so that you don't need to ask for. You get it after a timeout or when it changes! That should be implemented too.

Mentor: jogibear9988

  • Implement TIA File support

At the Moment the Lib can read TIA Files using DLL's wich are included in TIA Portal. We should implement native support of the Dataformat. For this we need to analyse if this is possible at all.

  • Implement support for S7 1200/1500 communication

The new siemens CPUs support the old communication (for visualisation access), but also have a new communication. This should also be implemented in the library. We firstly have to discover: is this possible. When it hopefully is, we should implement functions to read Tags, Transfer Blocks, Start/Stop PLC, and read SZLs (when they still exist on S71200/1500)

Mentor: jogibear9988

Last edited Mar 17, 2013 at 10:30 PM by jogibear9988, version 7


No comments yet.