-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathindex.html
145 lines (131 loc) · 7.69 KB
/
index.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
<!DOCTYPE html>
<!--[if IE]><![endif]-->
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>This documentation is work in progress | TcOpen </title>
<meta name="viewport" content="width=device-width">
<meta name="title" content="This documentation is work in progress | TcOpen ">
<meta name="generator" content="docfx 2.58.9.0">
<link rel="shortcut icon" href="favicon.png">
<link rel="stylesheet" href="styles/docfx.vendor.css">
<link rel="stylesheet" href="styles/docfx.css">
<link rel="stylesheet" href="styles/main.css">
<meta property="docfx:navrel" content="toc">
<meta property="docfx:tocrel" content="toc">
</head>
<body data-spy="scroll" data-target="#affix" data-offset="120">
<div id="wrapper">
<header>
<nav id="autocollapse" class="navbar navbar-inverse ng-scope" role="navigation">
<div class="container">
<div class="navbar-header">
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#navbar">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="index.html">
<p class="text-logo">TcOpen</p>
</a>
</div>
<div class="collapse navbar-collapse" id="navbar">
<form class="navbar-form navbar-right" role="search" id="search">
<div class="form-group">
<input type="text" class="form-control" id="search-query" placeholder="Search" autocomplete="off">
</div>
</form>
<ul class="nav level1 navbar-nav">
<li>
<a href="articles/intro.html" title="Articles">Articles</a>
</li>
<li>
<a href="api/index.html" title="API reference">API reference</a>
</li>
</ul> </div>
</div>
</nav>
<div class="subnav navbar navbar-default">
<div class="container hide-when-search" id="breadcrumb">
<ul class="breadcrumb">
<li></li>
</ul>
</div>
</div>
</header>
<div role="main" class="container body-content hide-when-search">
<div class="article row grid">
<div class="col-md-10">
<article class="content wrap" id="_content" data-uid="">
<p><img src="images/logo.png" alt="TcOpen logo"></p>
<h1 id="this-documentation-is-work-in-progress"><strong>This documentation is work in progress</strong></h1>
<h1 id="raw-documentation-can-be-dowloaded-from-here"><em>Raw documentation can be dowloaded from <a href="https://github.com/TcOpenGroup/TcOpen.Documentation/tree/dev/docs">here</a></em></h1>
<h1 id="tcopen">TcOpen</h1>
<h2 id="quick-links">Quick links</h2>
<h3 id="articles"><a href="articles/intro.html">ARTICLES</a></h3>
<h3 id="api"><a href="api/index.html">API</a></h3>
<h2 id="what-is-tcopen">What is TcOpen?</h2>
<p>Open Source TwinCAT 3.1 code by Automation Professionals for Automation Professionals.</p>
<p>This is intended to be a continuous development project aimed to provide standard classes to start building deployable applications.</p>
<p>Developed on <a href="https://github.com/TcOpenGroup/TcOpen">GitHub</a> delivered as <a href="https://www.nuget.org/packages?q=TcOpenGroup">NuGet packages</a>.</p>
<h2 id="tcopen-is-a-framework">TcOpen is a framework</h2>
<p>We believe we can do better with a framework than without one. Here are the main reasons: a framework unifies the way that we create and interpret a software solution. It can relieve the programmer of various tasks. Allowing him to focus on solving actual problems, instead of having to program the condiments (alarms, state initiating/management, coordination, etc.).</p>
<p>A framework also helps to organise the program's structure — making it easier and faster to navigate and apply the changes for other programmers. It also helps to craft better components and ultimately deliver better applications. Without entering into technical details about how the framework is structured: we put a lot of effort and thought into making it sufficiently generic/abstract in order for it to suit as many applications as possible.</p>
<p>We understand that imposing a framework requires more than learning the programming language. We believe the advantages of the framework make it well worth the input!</p>
<p>We focus on these areas:</p>
<ul>
<li>Coordination (coordination primitives, sequences, etc.)</li>
<li>Observability (automated alarm systems, logging, hierarchical events organisation)</li>
<li>Hierarchical program structures</li>
<li>Automation of monotonous tasks (I/O binding)</li>
<li>Reusability</li>
<li>Data-driven applications</li>
</ul>
<h2 id="tcopen-is-object-oriented">TcOpen is Object-Oriented</h2>
<p>Besides the practical aspect of this project, there is yet another one, as we understand it — to bring a breath of fresh air to PLC programming; we will focus on Object-Oriented design to the maximum extent it is allowed in the TwinCAT 3 implementation of IEC-61131-3. The object-oriented approach allows for componentisation that is simply not possible with the non-oop paradigm.
TcOpen will be written in ST-OOP. We plan to have a solid replacement for SFC in the ST implementation.</p>
<h2 id="tcopen-compatibility">TcOpen compatibility</h2>
<h3 id="beckhoff-hmi">Beckhoff HMI</h3>
<p>The Inxton and MTS teams will focus on creating UI user controls for WPF, and then Blazor technology. We are committed to maintaining compatibility/cooperability with Beckhoff's HMI. The community is warmly welcomed to contribute to Beckhoff HMI components. A maintainer with solid experience is needed here.</p>
<h3 id="codesys-systems">CoDeSys systems</h3>
<p>There is no explicit promise of portability to other CoDeSys platforms. Still, we will seek to manage abstractions to keep the TcOpen code base adaptable to other CoDeSys systems.</p>
<h3 id="non-codesys-systems">Non-CoDeSys systems</h3>
<p>There is no intention to support codebase portability, nor interfacing to other non-CoDeSys platforms (Siemens, AB, and the like).</p>
</article>
</div>
<div class="hidden-sm col-md-2" role="complementary">
<div class="sideaffix">
<div class="contribution">
<ul class="nav">
<li>
<a href="https://github.com/TcOpenGroup/TcOpen.Documentation/blob/dev/index.md/#L1" class="contribution-link">Improve this Doc</a>
</li>
</ul>
</div>
<nav class="bs-docs-sidebar hidden-print hidden-xs hidden-sm affix" id="affix">
<h5>In This Article</h5>
<div></div>
</nav>
</div>
</div>
</div>
</div>
<footer>
<div class="grad-bottom"></div>
<div class="footer">
<div class="container">
<span class="pull-right">
<a href="#top">Back to top</a>
</span>
<p>Generated by <strong>DocFX</strong> | Delivered by TcOpenGroup contributors</p>
</div>
</div>
</footer>
</div>
<script type="text/javascript" src="styles/docfx.vendor.js"></script>
<script type="text/javascript" src="styles/docfx.js"></script>
<script type="text/javascript" src="styles/main.js"></script>
</body>
</html>