From 208501248fb593a32283f4d5acd930b1d0afe023 Mon Sep 17 00:00:00 2001 From: gigi mamaladze Date: Wed, 2 Jul 2025 20:01:02 +0400 Subject: [PATCH] Updated Pallet Build Chute --- PLC/AOIs/AOI_PB_CHUTE_AOI.L5X | 124 ++- PLC/AOIs/AOI_STATION_JR_CHUTE_AOI.L5X | 10 +- .../PALLET_BUILD/OIP/Pallete Build.tscn | 101 ++- PLC/Simulations/PALLET_BUILD/OIP/utils.gd | 86 +-- .../PALLET_BUILD/PLC/AOIs/AOI_FIO_AOI.L5X | 75 ++ .../PLC/AOIs/AOI_FLIP_FLOP_AOI.L5X | 19 +- .../PLC/AOIs/AOI_PB_CHUTE_AOI.L5X | 363 +++------ .../PLC/AOIs/AOI_STATION_JR_CHUTE_AOI.L5X | 178 +++++ .../PLC/AOIs/AOI_STATION_PB_CHUTE_AOI.L5X | 336 --------- .../PALLET_BUILD/PLC/AOIs/OIP_Beacon_AOI.L5X | 125 +--- .../PALLET_BUILD/PLC/AOIs/OIP_Chute_AOI.L5X | 10 +- .../PALLET_BUILD/PLC/PalletBuild.L5X | 706 ++++++++++++++---- .../PLC/UDTs/PB_CHUTE_DataType.L5X | 549 +++----------- .../PLC/UDTs/STATION_JR_CHUTE_DataType.L5X | 80 ++ .../PLC/UDTs/UDT_FIO_DataType.L5X | 106 +++ PLC/UDTs/PB_CHUTE_DataType.L5X | 103 ++- PLC/UDTs/STATION_JR_CHUTE_DataType.L5X | 6 +- 17 files changed, 1420 insertions(+), 1557 deletions(-) create mode 100644 PLC/Simulations/PALLET_BUILD/PLC/AOIs/AOI_FIO_AOI.L5X create mode 100644 PLC/Simulations/PALLET_BUILD/PLC/AOIs/AOI_STATION_JR_CHUTE_AOI.L5X delete mode 100644 PLC/Simulations/PALLET_BUILD/PLC/AOIs/AOI_STATION_PB_CHUTE_AOI.L5X create mode 100644 PLC/Simulations/PALLET_BUILD/PLC/UDTs/STATION_JR_CHUTE_DataType.L5X create mode 100644 PLC/Simulations/PALLET_BUILD/PLC/UDTs/UDT_FIO_DataType.L5X diff --git a/PLC/AOIs/AOI_PB_CHUTE_AOI.L5X b/PLC/AOIs/AOI_PB_CHUTE_AOI.L5X index e7b50de..fbb2f2d 100644 --- a/PLC/AOIs/AOI_PB_CHUTE_AOI.L5X +++ b/PLC/AOIs/AOI_PB_CHUTE_AOI.L5X @@ -1,9 +1,9 @@  - - + + - + @@ -18,37 +18,59 @@ + + + + + + + - + - + + + + + + + + + + + + + - + + + + @@ -73,7 +95,6 @@ - @@ -82,9 +103,12 @@ + + + - + @@ -93,9 +117,12 @@ + + + - + @@ -114,12 +141,18 @@ - + + + + + + + @@ -135,70 +168,75 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + + + + + + - + - + - + - + - + - + + + + + + + + + + + @@ -237,29 +285,29 @@ - + - + - + - + - + - + - + - + diff --git a/PLC/AOIs/AOI_STATION_JR_CHUTE_AOI.L5X b/PLC/AOIs/AOI_STATION_JR_CHUTE_AOI.L5X index 56546a2..162c88b 100644 --- a/PLC/AOIs/AOI_STATION_JR_CHUTE_AOI.L5X +++ b/PLC/AOIs/AOI_STATION_JR_CHUTE_AOI.L5X @@ -1,9 +1,9 @@  - - + + - + @@ -22,7 +22,7 @@ - + diff --git a/PLC/Simulations/PALLET_BUILD/OIP/Pallete Build.tscn b/PLC/Simulations/PALLET_BUILD/OIP/Pallete Build.tscn index f537f08..7d6b709 100644 --- a/PLC/Simulations/PALLET_BUILD/OIP/Pallete Build.tscn +++ b/PLC/Simulations/PALLET_BUILD/OIP/Pallete Build.tscn @@ -11,12 +11,12 @@ [ext_resource type="PackedScene" uid="uid://drle8i15nwr68" path="res://parts/StackLight.tscn" id="8_n3xqu"] [ext_resource type="Script" uid="uid://bl7o7avq4pi78" path="res://src/StackLight/stack_light_data.gd" id="9_fnchy"] [ext_resource type="Script" uid="uid://buet0tp11gjdl" path="res://src/StackLight/stack_segment_data.gd" id="10_crqpc"] -[ext_resource type="PackedScene" uid="uid://brhwonoyljmqn" path="res://Sims_06_16/Chute.tscn" id="12_mueih"] +[ext_resource type="PackedScene" uid="uid://brhwonoyljmqn" path="res://Chute.tscn" id="12_mueih"] [ext_resource type="PackedScene" uid="uid://ccnjj66g0dynu" path="res://parts/Pallet.tscn" id="14_e5heu"] -[ext_resource type="Script" uid="uid://dudm8psmqax6d" path="res://Sims_06_16/utils.gd" id="14_f1y6l"] +[ext_resource type="Script" uid="uid://ci4xxmdlyaq0n" path="res://utils.gd" id="15_8uneb"] [ext_resource type="PackedScene" uid="uid://bqlkj4ar8q1ws" path="res://parts/assemblies/BeltConveyorAssembly.tscn" id="16_bfduw"] -[sub_resource type="ShaderMaterial" id="ShaderMaterial_e5heu"] +[sub_resource type="ShaderMaterial" id="ShaderMaterial_8uneb"] render_priority = 0 shader = ExtResource("5_soj22") shader_parameter/Scale = 1.34342 @@ -38,7 +38,7 @@ _surfaces = [{ }] blend_shape_mode = 0 -[sub_resource type="ArrayMesh" id="ArrayMesh_bfduw"] +[sub_resource type="ArrayMesh" id="ArrayMesh_ko2pj"] resource_name = "RCSideGuard_RCSideGuard" _surfaces = [{ "aabb": AABB(-0.5, -0.00427932, -1.12983, 1, 0.604281, 0.169856), @@ -46,7 +46,7 @@ _surfaces = [{ "format": 34896613399, "index_count": 204, "index_data": PackedByteArray("AgAJAAcAAgAMAAkALAAIACgALAAGAAgADAAgACIADAADACAAHQAjACEAHQAmACMAHQAaACYAHQAYABoALwApADEALwAtACkAEQAyABMAEQAwADIAEAA3ADUAEAASADcAPQBCAEYAPQBBAEIAbQBDAEAAbQBpAEMARwBeADwARwBhAF4AWgBgAGUAWgBfAGAAWwBWAFQAWwBkAFYAcQBoAGwAcQByAGgATABzAHAATABPAHMATQB6AE4ATQB4AHoABAA7AAAABAA+ADsADgBFAAsADgBIAEUACgBqACoACgBEAGoAJABJAA0AJABjAEkAAQBcAB4AAQA6AFwAHwBYABwAHwBdAFgAJwBiACUAJwBnAGIAGwBmACcAGwBXAGYAHABSABYAHABZAFIAKgB0ADMAKgBqAHQAKwA/AAUAKwBrAD8ALgBrACsALgBuAGsAMwBQABQAMwB1AFAANABKAA8ANAB2AEoADwBvAC4ADwBLAG8AFQB7ADkAFQBRAHsAFwBVABkAFwBTAFUAOAB3ADYAOAB5AHcA"), -"material": SubResource("ShaderMaterial_e5heu"), +"material": SubResource("ShaderMaterial_8uneb"), "name": "BeltTopDown", "primitive": 3, "uv_scale": Vector4(0, 0, 0, 0), @@ -56,41 +56,41 @@ _surfaces = [{ blend_shape_mode = 0 shadow_mesh = SubResource("ArrayMesh_gn6s2") -[sub_resource type="Resource" id="Resource_soj22"] +[sub_resource type="Resource" id="Resource_d0je0"] resource_local_to_scene = true script = ExtResource("10_crqpc") active = true segment_color = Color(0, 1, 0, 0.5) -[sub_resource type="Resource" id="Resource_64bia"] +[sub_resource type="Resource" id="Resource_3pf3c"] resource_local_to_scene = true script = ExtResource("10_crqpc") active = false segment_color = Color(0, 0.133333, 1, 1) -[sub_resource type="Resource" id="Resource_078ij"] +[sub_resource type="Resource" id="Resource_861op"] resource_local_to_scene = true script = ExtResource("9_fnchy") -segment_datas = [SubResource("Resource_soj22"), SubResource("Resource_64bia")] +segment_datas = [SubResource("Resource_d0je0"), SubResource("Resource_3pf3c")] -[sub_resource type="Resource" id="Resource_n3xqu"] +[sub_resource type="Resource" id="Resource_hpqs4"] resource_local_to_scene = true script = ExtResource("10_crqpc") active = true segment_color = Color(0, 1, 0, 0.5) -[sub_resource type="Resource" id="Resource_fnchy"] +[sub_resource type="Resource" id="Resource_766f7"] resource_local_to_scene = true script = ExtResource("10_crqpc") active = false segment_color = Color(0, 0.133333, 1, 1) -[sub_resource type="Resource" id="Resource_crqpc"] +[sub_resource type="Resource" id="Resource_50a4q"] resource_local_to_scene = true script = ExtResource("9_fnchy") -segment_datas = [SubResource("Resource_n3xqu"), SubResource("Resource_fnchy")] +segment_datas = [SubResource("Resource_hpqs4"), SubResource("Resource_766f7")] -[sub_resource type="ShaderMaterial" id="ShaderMaterial_4weqd"] +[sub_resource type="ShaderMaterial" id="ShaderMaterial_jiaeu"] render_priority = 0 shader = ExtResource("5_soj22") shader_parameter/Scale = 1.54232 @@ -98,7 +98,7 @@ shader_parameter/Metallic = 0.94 shader_parameter/Roughness = 0.5 shader_parameter/Specular = 0.5 -[sub_resource type="ArrayMesh" id="ArrayMesh_mueih"] +[sub_resource type="ArrayMesh" id="ArrayMesh_v7mlo"] resource_name = "RCSideGuard_RCSideGuard" _surfaces = [{ "aabb": AABB(-0.5, -0.00427932, -1.12983, 1, 0.604281, 0.169856), @@ -106,7 +106,7 @@ _surfaces = [{ "format": 34896613399, "index_count": 204, "index_data": PackedByteArray("AgAJAAcAAgAMAAkALAAIACgALAAGAAgADAAgACIADAADACAAHQAjACEAHQAmACMAHQAaACYAHQAYABoALwApADEALwAtACkAEQAyABMAEQAwADIAEAA3ADUAEAASADcAPQBCAEYAPQBBAEIAbQBDAEAAbQBpAEMARwBeADwARwBhAF4AWgBgAGUAWgBfAGAAWwBWAFQAWwBkAFYAcQBoAGwAcQByAGgATABzAHAATABPAHMATQB6AE4ATQB4AHoABAA7AAAABAA+ADsADgBFAAsADgBIAEUACgBqACoACgBEAGoAJABJAA0AJABjAEkAAQBcAB4AAQA6AFwAHwBYABwAHwBdAFgAJwBiACUAJwBnAGIAGwBmACcAGwBXAGYAHABSABYAHABZAFIAKgB0ADMAKgBqAHQAKwA/AAUAKwBrAD8ALgBrACsALgBuAGsAMwBQABQAMwB1AFAANABKAA8ANAB2AEoADwBvAC4ADwBLAG8AFQB7ADkAFQBRAHsAFwBVABkAFwBTAFUAOAB3ADYAOAB5AHcA"), -"material": SubResource("ShaderMaterial_4weqd"), +"material": SubResource("ShaderMaterial_jiaeu"), "name": "BeltTopDown", "primitive": 3, "uv_scale": Vector4(0, 0, 0, 0), @@ -116,24 +116,24 @@ _surfaces = [{ blend_shape_mode = 0 shadow_mesh = SubResource("ArrayMesh_gn6s2") -[sub_resource type="Resource" id="Resource_4jac4"] +[sub_resource type="Resource" id="Resource_plrun"] resource_local_to_scene = true script = ExtResource("10_crqpc") active = true segment_color = Color(0, 1, 0, 0.5) -[sub_resource type="Resource" id="Resource_uwegv"] +[sub_resource type="Resource" id="Resource_o2dim"] resource_local_to_scene = true script = ExtResource("10_crqpc") active = false segment_color = Color(0, 0.133333, 1, 1) -[sub_resource type="Resource" id="Resource_8ust1"] +[sub_resource type="Resource" id="Resource_mmluh"] resource_local_to_scene = true script = ExtResource("9_fnchy") -segment_datas = [SubResource("Resource_4jac4"), SubResource("Resource_uwegv")] +segment_datas = [SubResource("Resource_plrun"), SubResource("Resource_o2dim")] -[sub_resource type="ShaderMaterial" id="ShaderMaterial_pnxfq"] +[sub_resource type="ShaderMaterial" id="ShaderMaterial_8bbxb"] render_priority = 0 shader = ExtResource("5_soj22") shader_parameter/Scale = 1.56948 @@ -141,7 +141,7 @@ shader_parameter/Metallic = 0.94 shader_parameter/Roughness = 0.5 shader_parameter/Specular = 0.5 -[sub_resource type="ArrayMesh" id="ArrayMesh_m7nv8"] +[sub_resource type="ArrayMesh" id="ArrayMesh_ae0th"] resource_name = "RCSideGuard_RCSideGuard" _surfaces = [{ "aabb": AABB(-0.5, -0.00427932, -1.12983, 1, 0.604281, 0.169856), @@ -149,7 +149,7 @@ _surfaces = [{ "format": 34896613399, "index_count": 204, "index_data": PackedByteArray("AgAJAAcAAgAMAAkALAAIACgALAAGAAgADAAgACIADAADACAAHQAjACEAHQAmACMAHQAaACYAHQAYABoALwApADEALwAtACkAEQAyABMAEQAwADIAEAA3ADUAEAASADcAPQBCAEYAPQBBAEIAbQBDAEAAbQBpAEMARwBeADwARwBhAF4AWgBgAGUAWgBfAGAAWwBWAFQAWwBkAFYAcQBoAGwAcQByAGgATABzAHAATABPAHMATQB6AE4ATQB4AHoABAA7AAAABAA+ADsADgBFAAsADgBIAEUACgBqACoACgBEAGoAJABJAA0AJABjAEkAAQBcAB4AAQA6AFwAHwBYABwAHwBdAFgAJwBiACUAJwBnAGIAGwBmACcAGwBXAGYAHABSABYAHABZAFIAKgB0ADMAKgBqAHQAKwA/AAUAKwBrAD8ALgBrACsALgBuAGsAMwBQABQAMwB1AFAANABKAA8ANAB2AEoADwBvAC4ADwBLAG8AFQB7ADkAFQBRAHsAFwBVABkAFwBTAFUAOAB3ADYAOAB5AHcA"), -"material": SubResource("ShaderMaterial_pnxfq"), +"material": SubResource("ShaderMaterial_8bbxb"), "name": "BeltTopDown", "primitive": 3, "uv_scale": Vector4(0, 0, 0, 0), @@ -159,7 +159,7 @@ _surfaces = [{ blend_shape_mode = 0 shadow_mesh = SubResource("ArrayMesh_gn6s2") -[sub_resource type="ShaderMaterial" id="ShaderMaterial_gmn03"] +[sub_resource type="ShaderMaterial" id="ShaderMaterial_q1ea2"] render_priority = 0 shader = ExtResource("5_soj22") shader_parameter/Scale = 1.54793 @@ -167,7 +167,7 @@ shader_parameter/Metallic = 0.94 shader_parameter/Roughness = 0.5 shader_parameter/Specular = 0.5 -[sub_resource type="ArrayMesh" id="ArrayMesh_s3dt3"] +[sub_resource type="ArrayMesh" id="ArrayMesh_ttbkw"] resource_name = "RCSideGuard_RCSideGuard" _surfaces = [{ "aabb": AABB(-0.5, -0.00427932, -1.12983, 1, 0.604281, 0.169856), @@ -175,7 +175,7 @@ _surfaces = [{ "format": 34896613399, "index_count": 204, "index_data": PackedByteArray("AgAJAAcAAgAMAAkALAAIACgALAAGAAgADAAgACIADAADACAAHQAjACEAHQAmACMAHQAaACYAHQAYABoALwApADEALwAtACkAEQAyABMAEQAwADIAEAA3ADUAEAASADcAPQBCAEYAPQBBAEIAbQBDAEAAbQBpAEMARwBeADwARwBhAF4AWgBgAGUAWgBfAGAAWwBWAFQAWwBkAFYAcQBoAGwAcQByAGgATABzAHAATABPAHMATQB6AE4ATQB4AHoABAA7AAAABAA+ADsADgBFAAsADgBIAEUACgBqACoACgBEAGoAJABJAA0AJABjAEkAAQBcAB4AAQA6AFwAHwBYABwAHwBdAFgAJwBiACUAJwBnAGIAGwBmACcAGwBXAGYAHABSABYAHABZAFIAKgB0ADMAKgBqAHQAKwA/AAUAKwBrAD8ALgBrACsALgBuAGsAMwBQABQAMwB1AFAANABKAA8ANAB2AEoADwBvAC4ADwBLAG8AFQB7ADkAFQBRAHsAFwBVABkAFwBTAFUAOAB3ADYAOAB5AHcA"), -"material": SubResource("ShaderMaterial_gmn03"), +"material": SubResource("ShaderMaterial_q1ea2"), "name": "BeltTopDown", "primitive": 3, "uv_scale": Vector4(0, 0, 0, 0), @@ -185,28 +185,28 @@ _surfaces = [{ blend_shape_mode = 0 shadow_mesh = SubResource("ArrayMesh_gn6s2") -[sub_resource type="Resource" id="Resource_ed7yd"] +[sub_resource type="Resource" id="Resource_v1tfo"] resource_local_to_scene = true script = ExtResource("10_crqpc") active = true segment_color = Color(0, 1, 0, 0.5) -[sub_resource type="Resource" id="Resource_gls0x"] +[sub_resource type="Resource" id="Resource_g10di"] resource_local_to_scene = true script = ExtResource("10_crqpc") active = false segment_color = Color(1, 0.74902, 0, 1) -[sub_resource type="Resource" id="Resource_q7fkf"] +[sub_resource type="Resource" id="Resource_b64ki"] resource_local_to_scene = true script = ExtResource("10_crqpc") active = false segment_color = Color(0, 0.133333, 1, 1) -[sub_resource type="Resource" id="Resource_l15m6"] +[sub_resource type="Resource" id="Resource_to6mv"] resource_local_to_scene = true script = ExtResource("9_fnchy") -segment_datas = [SubResource("Resource_ed7yd"), SubResource("Resource_gls0x"), SubResource("Resource_q7fkf")] +segment_datas = [SubResource("Resource_v1tfo"), SubResource("Resource_g10di"), SubResource("Resource_b64ki")] [node name="Simulation" type="Node3D"] @@ -226,7 +226,7 @@ transform = Transform3D(2, 0, 0, 0, 1, 0, 0, 0, 2, 18.5, -1, 11) transform = Transform3D(2, 0, 1.86265e-09, 0, 1, 0, -1.86265e-09, 0, 2, 22.5, -1, 11) [node name="Despawner4" parent="Despawners" instance=ExtResource("8_e5heu")] -transform = Transform3D(2, 0, 0, 0, 1, 0, 0, 0, 2, 10.75, -1, 11.004) +transform = Transform3D(2, 0, 1.86265e-09, 0, 1, 0, -1.86265e-09, 0, 2, 10.6653, -1.12419, 11.0033) [node name="BoxSpawner" parent="." instance=ExtResource("2_f1y6l")] transform = Transform3D(-0.999964, 0, -0.00844741, 0, 1, 0, 0.00844741, 0, -0.999964, -2.89354, 4.61495, 18.537) @@ -305,7 +305,7 @@ metadata/hijack_scale = true [node name="SideGuard" parent="Chute 1" instance=ExtResource("4_bfduw")] transform = Transform3D(-2.15687e-07, -0.128605, -0.991696, -2.45525e-08, 0.991696, -0.128605, 1.34342, -2.52326e-09, -1.61568e-07, 0.647881, -0.717782, 0.010459) -mesh = SubResource("ArrayMesh_bfduw") +mesh = SubResource("ArrayMesh_ko2pj") skeleton = NodePath("../..") length = 1.34342 @@ -313,9 +313,9 @@ length = 1.34342 transform = Transform3D(-1.3069e-07, -0.0578722, 2.97509, -3.42815e-09, 0.446263, 0.385815, -3, 2.01115e-09, -1.30045e-07, 1.52954, 0.413814, -1.15868) light_value = 1 segments = 2 -_data = SubResource("Resource_078ij") -"Light 2" = SubResource("Resource_64bia") -"Light 1" = SubResource("Resource_soj22") +_data = SubResource("Resource_861op") +"Light 2" = SubResource("Resource_3pf3c") +"Light 1" = SubResource("Resource_d0je0") enable_comms = true tag_groups = null tag_name = "OIP_Beacon_1" @@ -338,7 +338,6 @@ tag_name = "OIP_50_1" transform = Transform3D(-4.93601e-08, -0.128605, 0.991696, -1.16415e-09, 0.991696, 0.128605, -1, 4.69246e-09, -4.09782e-08, 1.69696, -0.229037, 0.565654) text = "PKGREL" toggle = true -pressed = true button_color = Color(1, 1, 1, 1) enable_comms = true pushbutton_tag_group_name = "TagGroup0" @@ -382,9 +381,9 @@ metadata/hijack_scale = true transform = Transform3D(-1.3069e-07, -0.0578722, 2.97509, -3.42815e-09, 0.446263, 0.385815, -3, 2.01115e-09, -1.30045e-07, 1.45081, 0.403604, -4.60863) light_value = 1 segments = 2 -_data = SubResource("Resource_crqpc") -"Light 2" = SubResource("Resource_fnchy") -"Light 1" = SubResource("Resource_n3xqu") +_data = SubResource("Resource_50a4q") +"Light 2" = SubResource("Resource_766f7") +"Light 1" = SubResource("Resource_hpqs4") enable_comms = true tag_groups = null tag_name = "OIP_Beacon_2" @@ -416,7 +415,7 @@ lamp_tag_group_name = "TagGroup0" [node name="SideGuard3" parent="Chute 2" instance=ExtResource("4_bfduw")] transform = Transform3D(-2.47622e-07, -0.128605, -0.991696, -2.81725e-08, 0.991696, -0.128605, 1.54232, -2.53314e-09, -1.61568e-07, 0.621573, -0.721194, -3.47059) -mesh = SubResource("ArrayMesh_mueih") +mesh = SubResource("ArrayMesh_v7mlo") skeleton = NodePath("../..") length = 1.54232 @@ -457,9 +456,9 @@ metadata/hijack_scale = true transform = Transform3D(-1.3069e-07, -0.0578722, 2.97509, -3.42815e-09, 0.446263, 0.385815, -3, 2.01115e-09, -1.30045e-07, 1.47412, 0.406626, -1.0661) light_value = 1 segments = 2 -_data = SubResource("Resource_8ust1") -"Light 2" = SubResource("Resource_uwegv") -"Light 1" = SubResource("Resource_4jac4") +_data = SubResource("Resource_mmluh") +"Light 2" = SubResource("Resource_o2dim") +"Light 1" = SubResource("Resource_plrun") enable_comms = true tag_groups = null tag_name = "OIP_Beacon_3" @@ -491,7 +490,7 @@ lamp_tag_group_name = "TagGroup0" [node name="SideGuard2" parent="Chute 3" instance=ExtResource("4_bfduw")] transform = Transform3D(-2.52017e-07, -0.128605, -0.991696, -2.84053e-08, 0.991696, -0.128605, 1.56948, -2.70232e-09, -1.61568e-07, 0.618776, -0.721557, 0.0719357) -mesh = SubResource("ArrayMesh_m7nv8") +mesh = SubResource("ArrayMesh_ae0th") skeleton = NodePath("../..") length = 1.56948 @@ -530,7 +529,7 @@ metadata/hijack_scale = true [node name="SideGuard4" parent="Chute 4" instance=ExtResource("4_bfduw")] transform = Transform3D(-2.48521e-07, -0.128605, -0.991696, -2.82901e-08, 0.991696, -0.128605, 1.54793, -2.52329e-09, -1.61568e-07, 0.592455, -0.72497, 0) -mesh = SubResource("ArrayMesh_s3dt3") +mesh = SubResource("ArrayMesh_ttbkw") skeleton = NodePath("../..") length = 1.54793 @@ -538,10 +537,10 @@ length = 1.54793 transform = Transform3D(-1.3069e-07, -0.0578722, 2.97509, -3.42809e-09, 0.446263, 0.385815, -3, 2.01115e-09, -1.30045e-07, 1.47412, 0.406626, -1.0484) light_value = 1 segments = 3 -_data = SubResource("Resource_l15m6") -"Light 3" = SubResource("Resource_q7fkf") -"Light 2" = SubResource("Resource_gls0x") -"Light 1" = SubResource("Resource_ed7yd") +_data = SubResource("Resource_to6mv") +"Light 3" = SubResource("Resource_b64ki") +"Light 2" = SubResource("Resource_g10di") +"Light 1" = SubResource("Resource_v1tfo") enable_comms = true tag_groups = null tag_name = "OIP_Beacon_4" @@ -575,4 +574,4 @@ lamp_tag_group_name = "TagGroup0" transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 8.68567, -1.98086, -0.820173) [node name="Utils" type="Node" parent="."] -script = ExtResource("14_f1y6l") +script = ExtResource("15_8uneb") diff --git a/PLC/Simulations/PALLET_BUILD/OIP/utils.gd b/PLC/Simulations/PALLET_BUILD/OIP/utils.gd index 0bf049f..5db447c 100644 --- a/PLC/Simulations/PALLET_BUILD/OIP/utils.gd +++ b/PLC/Simulations/PALLET_BUILD/OIP/utils.gd @@ -1,39 +1,3 @@ -#@tool -#extends Node -# -#@onready var box_spawner: BoxSpawner = $"../BoxSpawner" -#@onready var box_spawner_2: BoxSpawner = $"../BoxSpawner2" -#@onready var box_spawner_3: BoxSpawner = $"../BoxSpawner3" -#@onready var box_spawner_4: BoxSpawner = $"../BoxSpawner4" -# -#var tag_group = "TagGroup0" -#func _ready() -> void: - # - #SimulationEvents.simulation_started.connect(_on_simulation_started) -# -#func _on_simulation_started() -> void: -# - #OIPComms.register_tag(tag_group, "Chute_1.CTRL.STS.Enabled", 1) - #OIPComms.register_tag(tag_group, "Chute_1.CTRL.STS.Jam_At_Full_Sensor", 1) - #OIPComms.register_tag(tag_group, "Chute_1.CTRL.STS.Full", 1) - #OIPComms.register_tag(tag_group, "Chute_2.CTRL.STS.Enabled", 1) - #OIPComms.register_tag(tag_group, "Chute_2.CTRL.STS.Jam_At_Full_Sensor", 1) - #OIPComms.register_tag(tag_group, "Chute_2.CTRL.STS.Full", 1) - #OIPComms.register_tag(tag_group, "Chute_3.CTRL.STS.Enabled", 1) - #OIPComms.register_tag(tag_group, "Chute_3.CTRL.STS.Jam_At_Full_Sensor", 1) - #OIPComms.register_tag(tag_group, "Chute_3.CTRL.STS.Full", 1) - #OIPComms.register_tag(tag_group, "Chute_4.CTRL.STS.Enabled", 1) - #OIPComms.register_tag(tag_group, "Chute_4.CTRL.STS.Jam_At_Full_Sensor", 1) - #OIPComms.register_tag(tag_group, "Chute_4.CTRL.STS.Full", 1) - # -# -#func _physics_process(delta: float) -> void: - #box_spawner.disable = bool( or not OIPComms.read_bit(tag_group,"Chute_1.CTRL.STS.Enabled") or OIPComms.read_bit(tag_group,"Chute_1.CTRL.STS.Full")) - #box_spawner_2.disable = bool( or not OIPComms.read_bit(tag_group,"Chute_2.CTRL.STS.Enabled") or OIPComms.read_bit(tag_group,"Chute_2.CTRL.STS.Full")) - #box_spawner_3.disable = bool( or not OIPComms.read_bit(tag_group,"Chute_3.CTRL.STS.Enabled") or OIPComms.read_bit(tag_group,"Chute_3.CTRL.STS.Full")) - #box_spawner_4.disable = bool( or not OIPComms.read_bit(tag_group,"Chute_4.CTRL.STS.Enabled") or OIPComms.read_bit(tag_group,"Chute_4.CTRL.STS.Full")) - - @tool extends Node @@ -48,46 +12,16 @@ func _ready() -> void: SimulationEvents.simulation_started.connect(_on_simulation_started) func _on_simulation_started() -> void: - #pass - #OIPComms.register_tag(tag_group, "D2C_Chute_1.CTRL.STS.Gaylord_Jam_At_Full_Sensor", 1) - #OIPComms.register_tag(tag_group, "D2C_Chute_1.CTRL.STS.Full", 1) - #OIPComms.register_tag(tag_group, "D2C_Chute_1.CTRL.STS.Enabled", 1) - #OIPComms.register_tag(tag_group, "D2C_Chute_2.CTRL.STS.Gaylord_Jam_At_Full_Sensor", 1) - #OIPComms.register_tag(tag_group, "D2C_Chute_2.CTRL.STS.Full", 1) - #OIPComms.register_tag(tag_group, "D2C_Chute_2.CTRL.STS.Enabled", 1) - #OIPComms.register_tag(tag_group, "D2C_Chute_3.CTRL.STS.Gaylord_Jam_At_Full_Sensor", 1) - #OIPComms.register_tag(tag_group, "D2C_Chute_3.CTRL.STS.Full", 1) - #OIPComms.register_tag(tag_group, "D2C_Chute_3.CTRL.STS.Enabled", 1) - #OIPComms.register_tag(tag_group, "D2C_Chute_4.CTRL.STS.Gaylord_Jam_At_Full_Sensor", 1) - #OIPComms.register_tag(tag_group, "D2C_Chute_4.CTRL.STS.Full", 1) - #OIPComms.register_tag(tag_group, "D2C_Chute_4.CTRL.STS.Enabled", 1) - - OIPComms.register_tag(tag_group, "Chute_1.CTRL.STS.Enabled", 1) - #OIPComms.register_tag(tag_group, "Chute_1.CTRL.STS.Jam_At_Full_Sensor", 1) - OIPComms.register_tag(tag_group, "Chute_1.CTRL.STS.Full", 1) - OIPComms.register_tag(tag_group, "Chute_2.CTRL.STS.Enabled", 1) - #OIPComms.register_tag(tag_group, "Chute_2.CTRL.STS.Jam_At_Full_Sensor", 1) - OIPComms.register_tag(tag_group, "Chute_2.CTRL.STS.Full", 1) - OIPComms.register_tag(tag_group, "Chute_3.CTRL.STS.Enabled", 1) - #OIPComms.register_tag(tag_group, "Chute_3.CTRL.STS.Jam_At_Full_Sensor", 1) - OIPComms.register_tag(tag_group, "Chute_3.CTRL.STS.Full", 1) - OIPComms.register_tag(tag_group, "Chute_4.CTRL.STS.Enabled", 1) - #OIPComms.register_tag(tag_group, "Chute_4.CTRL.STS.Jam_At_Full_Sensor", 1) - OIPComms.register_tag(tag_group, "Chute_4.CTRL.STS.Full", 1) - OIPComms.register_tag(tag_group, "S011050_JR1.AOI.Jam_At_Sorter", 1) + + OIPComms.register_tag(tag_group, "Chute_1.CTRL.STS.Ready", 1) + OIPComms.register_tag(tag_group, "Chute_2.CTRL.STS.Ready", 1) + OIPComms.register_tag(tag_group, "Chute_3.CTRL.STS.Ready", 1) + OIPComms.register_tag(tag_group, "Chute_4.CTRL.STS.Ready", 1) + func _physics_process(delta: float) -> void: - #pass - #box_spawner.disable = (OIPComms.read_bit(tag_group,"D2C_Chute_1.CTRL.STS.Gaylord_Jam_At_Full_Sensor") or OIPComms.read_bit(tag_group,"D2C_Chute_1.CTRL.STS.Full") or not OIPComms.read_bit(tag_group,"D2C_Chute_1.CTRL.STS.Enabled")) - #box_spawner_2.disable = (OIPComms.read_bit(tag_group,"D2C_Chute_2.CTRL.STS.Gaylord_Jam_At_Full_Sensor") or OIPComms.read_bit(tag_group,"D2C_Chute_2.CTRL.STS.Full") or not OIPComms.read_bit(tag_group,"D2C_Chute_2.CTRL.STS.Enabled")) - #box_spawner_3.disable = (OIPComms.read_bit(tag_group,"D2C_Chute_3.CTRL.STS.Gaylord_Jam_At_Full_Sensor") or OIPComms.read_bit(tag_group,"D2C_Chute_3.CTRL.STS.Full") or not OIPComms.read_bit(tag_group,"D2C_Chute_3.CTRL.STS.Enabled")) - #box_spawner_4.disable = (OIPComms.read_bit(tag_group,"D2C_Chute_4.CTRL.STS.Gaylord_Jam_At_Full_Sensor") or OIPComms.read_bit(tag_group,"D2C_Chute_4.CTRL.STS.Full") or not OIPComms.read_bit(tag_group,"D2C_Chute_4.CTRL.STS.Enabled")) - - #print("Jam_At_Full_Sensor ",OIPComms.read_bit(tag_group,"D2C_Chute_1.CTRL.STS.Gaylord_Jam_At_Full_Sensor")) - #print("Full 100 ",OIPComms.read_bit(tag_group,"D2C_Chute_1.CTRL.STS.Full")) - #print(box_spawner.disable)# or OIPComms.read_bit(tag_group,"Chute_1.CTRL.STS.Full")) - box_spawner.disable = bool(not OIPComms.read_bit(tag_group,"Chute_1.CTRL.STS.Enabled") or OIPComms.read_bit(tag_group,"Chute_1.CTRL.STS.Full") or OIPComms.read_bit(tag_group,"S011050_JR1.AOI.Jam_At_Sorter")) - box_spawner_2.disable = bool(not OIPComms.read_bit(tag_group,"Chute_2.CTRL.STS.Enabled") or OIPComms.read_bit(tag_group,"Chute_2.CTRL.STS.Full") or OIPComms.read_bit(tag_group,"S011050_JR1.AOI.Jam_At_Sorter")) - box_spawner_3.disable = bool(not OIPComms.read_bit(tag_group,"Chute_3.CTRL.STS.Enabled") or OIPComms.read_bit(tag_group,"Chute_3.CTRL.STS.Full") or OIPComms.read_bit(tag_group,"S011050_JR1.AOI.Jam_At_Sorter")) - box_spawner_4.disable = bool(not OIPComms.read_bit(tag_group,"Chute_4.CTRL.STS.Enabled") or OIPComms.read_bit(tag_group,"Chute_4.CTRL.STS.Full") or OIPComms.read_bit(tag_group,"S011050_JR1.AOI.Jam_At_Sorter")) + box_spawner.disable = bool(not OIPComms.read_bit(tag_group,"Chute_1.CTRL.STS.Ready")) + box_spawner_2.disable = bool(not OIPComms.read_bit(tag_group,"Chute_2.CTRL.STS.Ready")) + box_spawner_3.disable = bool(not OIPComms.read_bit(tag_group,"Chute_3.CTRL.STS.Ready")) + box_spawner_4.disable = bool(not OIPComms.read_bit(tag_group,"Chute_4.CTRL.STS.Ready")) diff --git a/PLC/Simulations/PALLET_BUILD/PLC/AOIs/AOI_FIO_AOI.L5X b/PLC/Simulations/PALLET_BUILD/PLC/AOIs/AOI_FIO_AOI.L5X new file mode 100644 index 0000000..123e937 --- /dev/null +++ b/PLC/Simulations/PALLET_BUILD/PLC/AOIs/AOI_FIO_AOI.L5X @@ -0,0 +1,75 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/PLC/Simulations/PALLET_BUILD/PLC/AOIs/AOI_FLIP_FLOP_AOI.L5X b/PLC/Simulations/PALLET_BUILD/PLC/AOIs/AOI_FLIP_FLOP_AOI.L5X index 1292b9e..ddb7640 100644 --- a/PLC/Simulations/PALLET_BUILD/PLC/AOIs/AOI_FLIP_FLOP_AOI.L5X +++ b/PLC/Simulations/PALLET_BUILD/PLC/AOIs/AOI_FLIP_FLOP_AOI.L5X @@ -1,8 +1,6 @@  - + - - @@ -21,9 +19,6 @@ - - - @@ -32,17 +27,11 @@ - - - - - - @@ -50,9 +39,6 @@ - - - @@ -64,9 +50,6 @@ - - - diff --git a/PLC/Simulations/PALLET_BUILD/PLC/AOIs/AOI_PB_CHUTE_AOI.L5X b/PLC/Simulations/PALLET_BUILD/PLC/AOIs/AOI_PB_CHUTE_AOI.L5X index bc8ca11..fbb2f2d 100644 --- a/PLC/Simulations/PALLET_BUILD/PLC/AOIs/AOI_PB_CHUTE_AOI.L5X +++ b/PLC/Simulations/PALLET_BUILD/PLC/AOIs/AOI_PB_CHUTE_AOI.L5X @@ -1,186 +1,8 @@  - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -195,91 +17,80 @@ - + + - - - + + + - - - + + + - + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - - - - - - - - - - @@ -287,20 +98,17 @@ - - - - - - + + + - + @@ -309,12 +117,12 @@ - - - + + + - + @@ -323,9 +131,6 @@ - - - @@ -336,10 +141,18 @@ - - - + + + + + + + + + + + @@ -350,65 +163,80 @@ - + - + - + - + - + - + - + - + - + - + - + - + + + + + + + + + + + + + + + + - + - + - + - + - + - + + + + + + + + + + + @@ -447,29 +285,29 @@ - + - + - + - + - + - + - + - + @@ -478,7 +316,7 @@ - + @@ -498,7 +336,8 @@ - + + diff --git a/PLC/Simulations/PALLET_BUILD/PLC/AOIs/AOI_STATION_JR_CHUTE_AOI.L5X b/PLC/Simulations/PALLET_BUILD/PLC/AOIs/AOI_STATION_JR_CHUTE_AOI.L5X new file mode 100644 index 0000000..162c88b --- /dev/null +++ b/PLC/Simulations/PALLET_BUILD/PLC/AOIs/AOI_STATION_JR_CHUTE_AOI.L5X @@ -0,0 +1,178 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/PLC/Simulations/PALLET_BUILD/PLC/AOIs/AOI_STATION_PB_CHUTE_AOI.L5X b/PLC/Simulations/PALLET_BUILD/PLC/AOIs/AOI_STATION_PB_CHUTE_AOI.L5X deleted file mode 100644 index a5a8710..0000000 --- a/PLC/Simulations/PALLET_BUILD/PLC/AOIs/AOI_STATION_PB_CHUTE_AOI.L5X +++ /dev/null @@ -1,336 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/PLC/Simulations/PALLET_BUILD/PLC/AOIs/OIP_Beacon_AOI.L5X b/PLC/Simulations/PALLET_BUILD/PLC/AOIs/OIP_Beacon_AOI.L5X index 496cb0e..b992a0e 100644 --- a/PLC/Simulations/PALLET_BUILD/PLC/AOIs/OIP_Beacon_AOI.L5X +++ b/PLC/Simulations/PALLET_BUILD/PLC/AOIs/OIP_Beacon_AOI.L5X @@ -1,109 +1,7 @@  - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -118,49 +16,31 @@ - - - - - - - - - - - - - - - - - - @@ -168,9 +48,6 @@ - - - diff --git a/PLC/Simulations/PALLET_BUILD/PLC/AOIs/OIP_Chute_AOI.L5X b/PLC/Simulations/PALLET_BUILD/PLC/AOIs/OIP_Chute_AOI.L5X index efb5f9f..36c7670 100644 --- a/PLC/Simulations/PALLET_BUILD/PLC/AOIs/OIP_Chute_AOI.L5X +++ b/PLC/Simulations/PALLET_BUILD/PLC/AOIs/OIP_Chute_AOI.L5X @@ -1,8 +1,6 @@  - + - - @@ -18,17 +16,11 @@ - - - - - - diff --git a/PLC/Simulations/PALLET_BUILD/PLC/PalletBuild.L5X b/PLC/Simulations/PALLET_BUILD/PLC/PalletBuild.L5X index 2f3af39..001ea66 100644 --- a/PLC/Simulations/PALLET_BUILD/PLC/PalletBuild.L5X +++ b/PLC/Simulations/PALLET_BUILD/PLC/PalletBuild.L5X @@ -1,6 +1,6 @@  - - + @@ -9,19 +9,56 @@ - + + + + + + + + + - + - @@ -45,42 +82,144 @@ - + - - + - - + + + + + + + + + + + + + @@ -88,17 +227,50 @@ - + - + + + + @@ -116,6 +288,76 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -216,7 +458,7 @@ - + @@ -230,8 +472,12 @@ - + + + + + @@ -240,14 +486,20 @@ + + + - + - + - + + + + @@ -256,6 +508,9 @@ + + + @@ -264,6 +519,9 @@ + + + @@ -272,6 +530,9 @@ + + + @@ -279,7 +540,10 @@ - + + + + @@ -330,12 +594,15 @@ + + + - + - + @@ -344,12 +611,15 @@ + + + - + - + @@ -371,7 +641,21 @@ - + + + + + + + + + + + + + + + @@ -385,65 +669,80 @@ - + - + - + - + - + - + - + - + - + - + - + - + + + + + + + + + + + + + + + + - + - + - + - + - + - + + + + + + + + + + + @@ -482,29 +791,29 @@ - + - + - + - + - + - + - + - + @@ -513,7 +822,7 @@ - + @@ -530,7 +839,7 @@ - + @@ -542,17 +851,23 @@ - - + + + + + - + - + + + + @@ -561,6 +876,9 @@ + + + @@ -569,6 +887,9 @@ + + + @@ -576,7 +897,10 @@ - + + + + @@ -600,18 +924,15 @@ - + + + + - + - - - - - - - + @@ -620,37 +941,37 @@ - + - + - + - + - + - + - + @@ -678,17 +999,17 @@ - + - + - + @@ -943,7 +1264,7 @@ @@ -953,11 +1274,11 @@ - + - + @@ -969,23 +1290,27 @@ - + - + + + + - + - + + @@ -1000,7 +1325,7 @@ @@ -1010,11 +1335,11 @@ - + - + @@ -1026,23 +1351,27 @@ - + - + + + + - + - + + @@ -1057,7 +1386,7 @@ @@ -1067,11 +1396,11 @@ - + - + @@ -1083,23 +1412,27 @@ - + - + + + + - + - + + @@ -1114,7 +1447,7 @@ @@ -1124,11 +1457,11 @@ - + - + @@ -1140,23 +1473,27 @@ - + - + + + + - + - + + @@ -1168,6 +1505,67 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -1496,38 +1894,36 @@ - + - + - - + + - + - - - - + + + + - - + + - - + + - - - - - - + + + + - + - + @@ -1588,7 +1984,7 @@ - + @@ -1607,12 +2003,12 @@ - + - + @@ -1621,16 +2017,16 @@ - + - + - + diff --git a/PLC/Simulations/PALLET_BUILD/PLC/UDTs/PB_CHUTE_DataType.L5X b/PLC/Simulations/PALLET_BUILD/PLC/UDTs/PB_CHUTE_DataType.L5X index 03a6180..4ca1ae1 100644 --- a/PLC/Simulations/PALLET_BUILD/PLC/UDTs/PB_CHUTE_DataType.L5X +++ b/PLC/Simulations/PALLET_BUILD/PLC/UDTs/PB_CHUTE_DataType.L5X @@ -1,41 +1,35 @@  - + - - - - - - - - - - - - - - - - @@ -63,19 +57,56 @@ @@ -84,434 +115,26 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/PLC/Simulations/PALLET_BUILD/PLC/UDTs/STATION_JR_CHUTE_DataType.L5X b/PLC/Simulations/PALLET_BUILD/PLC/UDTs/STATION_JR_CHUTE_DataType.L5X new file mode 100644 index 0000000..08fc283 --- /dev/null +++ b/PLC/Simulations/PALLET_BUILD/PLC/UDTs/STATION_JR_CHUTE_DataType.L5X @@ -0,0 +1,80 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/PLC/Simulations/PALLET_BUILD/PLC/UDTs/UDT_FIO_DataType.L5X b/PLC/Simulations/PALLET_BUILD/PLC/UDTs/UDT_FIO_DataType.L5X new file mode 100644 index 0000000..cc4a03e --- /dev/null +++ b/PLC/Simulations/PALLET_BUILD/PLC/UDTs/UDT_FIO_DataType.L5X @@ -0,0 +1,106 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/PLC/UDTs/PB_CHUTE_DataType.L5X b/PLC/UDTs/PB_CHUTE_DataType.L5X index 2f15d2d..4ca1ae1 100644 --- a/PLC/UDTs/PB_CHUTE_DataType.L5X +++ b/PLC/UDTs/PB_CHUTE_DataType.L5X @@ -1,15 +1,35 @@  - - + + @@ -37,20 +57,56 @@ @@ -59,8 +115,21 @@