Skip to content

Commit 89f4c8d

Browse files
committed
feat(server): Include CNC example
1 parent 0e549d4 commit 89f4c8d

File tree

2 files changed

+64
-0
lines changed

2 files changed

+64
-0
lines changed

CMakeLists.txt

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -218,6 +218,21 @@ target_sources(
218218
${UA_NODESET_GMS_SOURCES} ${UA_TYPES_GMS_HEADERS} ${UA_TYPES_GMS_SOURCES}
219219
)
220220
target_link_libraries(ua_gen_gms PUBLIC ua_gen_machinetool ua_gen_ia ua_gen_machinery ua_gen_machinery_result)
221+
NAME "cnc"
222+
FILE_CSV "${open62541_NODESET_DIR}/CNC/Opc.Ua.CNC.NodeIds.csv"
223+
FILE_NS "${open62541_NODESET_DIR}/CNC/Opc.Ua.CNC.NodeSet.xml"
224+
FILE_BSD "${PROJECT_SOURCE_DIR}/model/Opc.Ua.CNC.NodeSet.bsd"
225+
OUTPUT_DIR "${PROJECT_SOURCE_DIR}/src_generated"
226+
NAMESPACE_MAP "8:http://opcfoundation.org/UA/CNC"
227+
DEPENDS machinery
228+
)
229+
230+
add_library(
231+
ua_gen_cnc
232+
src_generated/cnc_nodeids.h src_generated/namespace_cnc_generated.c src_generated/types_cnc_generated.c
233+
src_generated/types_cnc_generated.h
234+
)
235+
target_link_libraries(ua_gen_cnc PUBLIC open62541::open62541)
221236

222237
ua_generate_nodeset_and_datatypes(
223238
NAME "irdi"

model/Opc.Ua.CNC.NodeSet.bsd

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
<opc:TypeDictionary xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:tns="http://opcfoundation.org/UA/CNC" DefaultByteOrder="LittleEndian" xmlns:opc="http://opcfoundation.org/BinarySchema/" xmlns:ua="http://opcfoundation.org/UA/" TargetNamespace="http://opcfoundation.org/UA/CNC">
2+
<opc:Import Namespace="http://opcfoundation.org/UA/"/>
3+
<opc:StructuredType BaseType="ua:ExtensionObject" Name="CncPositionDataType">
4+
<opc:Documentation>Structure of position elements.</opc:Documentation>
5+
<opc:Field TypeName="opc:Double" Name="ActPos"/>
6+
<opc:Field TypeName="opc:Double" Name="CmdPos"/>
7+
<opc:Field TypeName="opc:Double" Name="RemDist"/>
8+
</opc:StructuredType>
9+
<opc:EnumeratedType LengthInBits="32" Name="CncAxisStatus">
10+
<opc:Documentation>Status of a CNC axis.</opc:Documentation>
11+
<opc:EnumeratedValue Name="InPosition" Value="0"/>
12+
<opc:EnumeratedValue Name="Moving" Value="1"/>
13+
<opc:EnumeratedValue Name="Parked" Value="2"/>
14+
</opc:EnumeratedType>
15+
<opc:EnumeratedType LengthInBits="32" Name="CncChannelProgramStatus">
16+
<opc:Documentation>Status of program execution within a channel.</opc:Documentation>
17+
<opc:EnumeratedValue Name="Stopped" Value="0"/>
18+
<opc:EnumeratedValue Name="Running" Value="1"/>
19+
<opc:EnumeratedValue Name="Waiting" Value="2"/>
20+
<opc:EnumeratedValue Name="Interrupted" Value="3"/>
21+
<opc:EnumeratedValue Name="Canceled" Value="4"/>
22+
</opc:EnumeratedType>
23+
<opc:EnumeratedType LengthInBits="32" Name="CncChannelStatus">
24+
<opc:Documentation>Status of a CNC channel.</opc:Documentation>
25+
<opc:EnumeratedValue Name="Active" Value="0"/>
26+
<opc:EnumeratedValue Name="Interrupted" Value="1"/>
27+
<opc:EnumeratedValue Name="Reset" Value="2"/>
28+
</opc:EnumeratedType>
29+
<opc:EnumeratedType LengthInBits="32" Name="CncOperationMode">
30+
<opc:Documentation>Modes of operation.</opc:Documentation>
31+
<opc:EnumeratedValue Name="Manual" Value="0"/>
32+
<opc:EnumeratedValue Name="MDA" Value="1"/>
33+
<opc:EnumeratedValue Name="Automatic" Value="2"/>
34+
</opc:EnumeratedType>
35+
<opc:EnumeratedType LengthInBits="32" Name="CncSpindleStatus">
36+
<opc:Documentation>Status of a CNC spindle.</opc:Documentation>
37+
<opc:EnumeratedValue Name="Stopped" Value="0"/>
38+
<opc:EnumeratedValue Name="InTargetArea" Value="1"/>
39+
<opc:EnumeratedValue Name="Accelerating" Value="2"/>
40+
<opc:EnumeratedValue Name="Decelerating" Value="3"/>
41+
<opc:EnumeratedValue Name="Parked" Value="4"/>
42+
</opc:EnumeratedType>
43+
<opc:EnumeratedType LengthInBits="32" Name="CncSpindleTurnDirection">
44+
<opc:Documentation>Turn direction of a CNC spindle.</opc:Documentation>
45+
<opc:EnumeratedValue Name="None" Value="0"/>
46+
<opc:EnumeratedValue Name="CW" Value="1"/>
47+
<opc:EnumeratedValue Name="CCW" Value="2"/>
48+
</opc:EnumeratedType>
49+
</opc:TypeDictionary>

0 commit comments

Comments
 (0)