In this area you find (or probably found, if deleted due to improved clarity) several posts with converted functions or function blocks from the OSCAT-Library (

I attached an “all in” Zip file. All further updates will be published as a reply to this initial post.

This file contains:


  • PDF OSCAT Building English
  • PDF OSCAT Building German


  • 4 Other Functions (due to some reasons not complete)
  • 5 Mathematics
  • 6 Arrays
  • 7 Arithmetic functions
  • 8 Geometric functions
  • 9 Vector mathematics
  • 10 Arithmetics with double precision
  • 11 Time & Date
  • 12String functions (due to some reasons not complete)
  • 13 Memory modules
  • 14 Pulse generators
  • 15 Logic modules
  • 16 Latches, flip-flop and shift registers
  • 17 Signal generators
  • 18 Signal processing
  • 19 Sensors
  • 20 Measuring modules
  • 21 Calculations
  • 22Control modules
  • 23 Device driver
  • 24 Buffer management (due to some reasons not complete)
  • 25 List processing (due to some reasons not complete)

OSCAT BUILDING (Whole Library)

The OSCAT Library is an extremely useful and comprehensive open source Library. It contains several hundred of different functions and function blocks.

I converted almost the whole OSCAT Basic 3.33 and the whole OSCAT building 1.0 library ready to use with OpenPLC. Because OpenPLC has got no library management functionality I stored the OSCAT Library in OpenPLC projects. The headlines and enumeration are similar to them in the documentation. You will find a detailed description for every FB in the attached PDF-documents a short one comes with each FB. To use them in your own project just copy / paste the desired FB. If one FB needs further FB´s you will find a hint at the end of the ST-Code. All required FB´s are taken together in one Project. It´s not necessary to open more than one project. Sometimes special data types are required. In this case you will have to declare them manually. C/P does not work with data types.

Due to the missing library management the whole migration must have been done manually. Although I checked every FB with the compiler there might be some errors left. So, use them on your own risk, check if the FB does what it should and if you detect an error, fix it and post it. Thanks for that in advance.

There are some FB´s I wasn´t able to convert. Sometimes du to OpenPLC reasons sometimes du to deficient skills. Any kind of help is welcome.

Have fun with the OSCAT library
Quote 1 0
WHere I will get source code of these blocks ?
Quote 0 0
Have you tried downloading the attached zip file? That's a good start...
Quote 0 0