Skip to content
/ TcBase Public

Object-oriented base framework for building TwinCAT 3 projects. NB: under heavy development!

License

Notifications You must be signed in to change notification settings

ahuca/TcBase

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

52 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GitHub license

TcBase - TwinCAT 3 base framework

Introduction

This is an open-source TwinCAT 3 base framework providing a baseline for developing object-oriented TwinCAT 3 projects. It provides boilerplates of some well-known software design patterns, such as state pattern, and observer pattern. More patterns to come. It aims to provide more advanced types of data collection, for now only a list. Additionally, it has some utilities like an invocation tracker and action, which can be executed iteratively over an I_Enumerable, for example, fbList.ForEach(fbRunAllCyclicTask).

This project is under heavy development, so there will not be any releases any time soon. However, the project is built to be a library, so you can manually produce a library out of this project from the source code. For instructions on how to do this, check here.

How to use the framework

To take full advantage of the framework - being an object-oriented framework itself - every new FB that you create should inherit from FB_Object or its children. Like how FB_State inherits from FB_Object and thus can be stored in FB_List without any extra implementation. At this point, you might be wondering "well that is a helluva lot of coupling", and we applaud such intuition. That is why we try our best to keep the framework as lite as possible, to minimize the coupling.

Being under heavy development, we advise you well to use proxy - or simply put, a wrapper - when using this library, instead of direct usage.

Dependencies

The unit tests for TcBase depends on the TcUnit library version 1.2.0.0.

Acknowledgement

Some elements of the TcBase were based on parts of the open-sourced project TcOpen.

About

Object-oriented base framework for building TwinCAT 3 projects. NB: under heavy development!

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published