diff --git a/Simulations/STATION_JR_PB/Ignition/PLC_SIMULATIONS_2025-05-26_1536.zip b/Simulations/STATION_JR_PB/Ignition/PLC_SIMULATIONS_2025-05-26_1536.zip index d58b33a..36c2ab6 100644 Binary files a/Simulations/STATION_JR_PB/Ignition/PLC_SIMULATIONS_2025-05-26_1536.zip and b/Simulations/STATION_JR_PB/Ignition/PLC_SIMULATIONS_2025-05-26_1536.zip differ diff --git a/Simulations/STATION_JR_PB/OIP/STATION_JR_PB.tscn b/Simulations/STATION_JR_PB/OIP/STATION_JR_PB.tscn new file mode 100644 index 0000000..df29a7c --- /dev/null +++ b/Simulations/STATION_JR_PB/OIP/STATION_JR_PB.tscn @@ -0,0 +1,77 @@ +[gd_scene load_steps=9 format=3 uid="uid://bbt38yd6yc0sc"] + +[ext_resource type="PackedScene" uid="uid://dyhvoundu2kqc" path="res://parts/Building.tscn" id="1_3b5ec"] +[ext_resource type="PackedScene" uid="uid://bqlkj4ar8q1ws" path="res://parts/assemblies/BeltConveyorAssembly.tscn" id="2_rxahx"] +[ext_resource type="PackedScene" uid="uid://c1mup2vown0ak" path="res://parts/BladeStop.tscn" id="3_gvmjx"] +[ext_resource type="PackedScene" uid="uid://co2mqmdwpn57w" path="res://parts/BoxSpawner.tscn" id="4_6eg1i"] +[ext_resource type="PackedScene" uid="uid://bl73u0rvt2orv" path="res://parts/Despawner.tscn" id="5_rcr4s"] +[ext_resource type="PackedScene" uid="uid://gddgyvex6gdj" path="res://parts/PushButton.tscn" id="8_kfv3x"] +[ext_resource type="PackedScene" uid="uid://kdpe7o4ec1fa" path="res://parts/DiffuseSensor.tscn" id="9_bk1n2"] +[ext_resource type="Script" uid="uid://mk68t7o3rd8u" path="res://station_jr_pb.gd" id="10_ow4ia"] + +[node name="Simulation" type="Node3D"] + +[node name="Building" parent="." instance=ExtResource("1_3b5ec")] + +[node name="UL1_3" parent="." instance=ExtResource("2_rxahx")] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.0166965, -0.308412, -1.61317) +local_floor_plane = Plane(0, 1, 0, -1.69159) +speed = 0.0 +enable_comms = true +speed_tag_name = "[PLC]UL1_3_OIP" +running_tag_name = "" +metadata/hijack_scale = true +size = Vector3(14.7823, 0.5, 1.524) +metadata/hijack_scale = true + +[node name="BladeStop" parent="." instance=ExtResource("3_gvmjx")] +transform = Transform3D(-1, -5.96046e-08, 0, 5.96046e-08, -1, 0, 0, 0, 0.448, 2.55519, 1.10247, -1.69079) +active = true + +[node name="BoxSpawner" parent="." instance=ExtResource("4_6eg1i")] +transform = Transform3D(1, 2.30012e-09, -9.31322e-10, -2.30012e-09, 1, 8.84756e-09, 9.31322e-10, -8.84756e-09, 1, -6.66841, 0.177073, -1.71267) +disable = true + +[node name="Despawner" parent="." instance=ExtResource("5_rcr4s")] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 6.60256, 0.176073, -1.63491) + +[node name="UL1_3_JR_PB1" parent="." instance=ExtResource("8_kfv3x")] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.73416, -0.180284, -0.714896) +text = "JR_PB1" +lamp = true +enable_comms = true +pushbutton_tag_group_name = "TagGroup0" +pushbutton_tag_name = "[PLC]UL1_3_JR_PB1_OIP" +lamp_tag_group_name = "TagGroup0" +lamp_tag_name = "[PLC]UL1_3_JR_PB1_LT_OIP" + +[node name="UL1_3_JR_PB2" parent="." instance=ExtResource("8_kfv3x")] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.908714, -0.198275, -0.741422) +text = "JR_PB2" +lamp = true +enable_comms = true +pushbutton_tag_group_name = "TagGroup0" +pushbutton_tag_name = "[PLC]UL1_3_JR_PB2_OIP" +lamp_tag_group_name = "TagGroup0" +lamp_tag_name = "[PLC]UL1_3_JR_PB2_LT_OIP" + +[node name="MCM_Start_PB" parent="." instance=ExtResource("8_kfv3x")] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.31822, -0.180284, -0.714896) +text = "MCM_START" +toggle = true +pressed = true +lamp = true +enable_comms = true +pushbutton_tag_group_name = "TagGroup0" +pushbutton_tag_name = "[PLC]UL1_3_VFD1.CTRL.STS.MCM_Started" +lamp_tag_group_name = "TagGroup0" +lamp_tag_name = "[PLC]UL1_3_VFD1.CTRL.STS.MCM_Started" + +[node name="UL1_3_JPE1" parent="." instance=ExtResource("9_bk1n2")] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.87801, -0.080121, -2.97105) +max_range = 1.684 +enable_comms = true +tag_name = "[PLC]UL1_3_JPE1_OIP" + +[node name="station_jr_pb" type="Node" parent="."] +script = ExtResource("10_ow4ia") diff --git a/Simulations/STATION_JR_PB/OIP/Simulation.tscn b/Simulations/STATION_JR_PB/OIP/Simulation.tscn deleted file mode 100644 index e9336af..0000000 --- a/Simulations/STATION_JR_PB/OIP/Simulation.tscn +++ /dev/null @@ -1,147 +0,0 @@ -[gd_scene load_steps=14 format=4 uid="uid://bbt38yd6yc0sc"] - -[ext_resource type="PackedScene" uid="uid://dyhvoundu2kqc" path="res://parts/Building.tscn" id="1_3b5ec"] -[ext_resource type="PackedScene" uid="uid://bqlkj4ar8q1ws" path="res://parts/assemblies/BeltConveyorAssembly.tscn" id="2_rxahx"] -[ext_resource type="PackedScene" uid="uid://c1mup2vown0ak" path="res://parts/BladeStop.tscn" id="3_gvmjx"] -[ext_resource type="PackedScene" uid="uid://co2mqmdwpn57w" path="res://parts/BoxSpawner.tscn" id="4_6eg1i"] -[ext_resource type="PackedScene" uid="uid://bl73u0rvt2orv" path="res://parts/Despawner.tscn" id="5_rcr4s"] -[ext_resource type="PackedScene" uid="uid://dvjrx5crpqs5f" path="res://parts/SideGuard.tscn" id="6_a36lg"] -[ext_resource type="Shader" uid="uid://wtu5yyfpdcgl" path="res://assets/3DModels/Shaders/MetalShaderSideGuard.tres" id="7_huqq8"] -[ext_resource type="PackedScene" uid="uid://gddgyvex6gdj" path="res://parts/PushButton.tscn" id="8_kfv3x"] -[ext_resource type="PackedScene" uid="uid://kdpe7o4ec1fa" path="res://parts/DiffuseSensor.tscn" id="9_bk1n2"] -[ext_resource type="Script" uid="uid://mk68t7o3rd8u" path="res://utils.gd" id="10_ow4ia"] - -[sub_resource type="ShaderMaterial" id="ShaderMaterial_3b5ec"] -render_priority = 0 -shader = ExtResource("7_huqq8") -shader_parameter/Scale = 3.70031 -shader_parameter/Metallic = 0.94 -shader_parameter/Roughness = 0.5 -shader_parameter/Specular = 0.5 - -[sub_resource type="ArrayMesh" id="ArrayMesh_gn6s2"] -_surfaces = [{ -"aabb": AABB(-0.5, -0.00427932, -1.12983, 1, 0.604281, 0.169856), -"format": 34896613377, -"index_count": 204, -"index_data": PackedByteArray("AAACAAEAAAADAAIADQACAAwADQABAAIAAwAJAAoAAwAAAAkACAAKAAkACAALAAoACAAHAAsACAAGAAcADgAMAA8ADgANAAwABAAPAAUABAAOAA8ABAARABAABAAFABEAEgAUABUAEgATABQAHwAUABMAHwAeABQAFQAbABIAFQAcABsAGgAcAB0AGgAbABwAGgAZABgAGgAdABkAIAAeAB8AIAAhAB4AFgAhACAAFgAXACEAFgAjABcAFgAiACMAAQASAAAAAQATABIAAwAUAAIAAwAVABQAAgAeAAwAAgAUAB4ACgAVAAMACgAcABUAAAAbAAkAAAASABsACQAaAAgACQAbABoACwAcAAoACwAdABwABwAdAAsABwAZAB0ACAAYAAYACAAaABgADAAhAA8ADAAeACEADQATAAEADQAfABMADgAfAA0ADgAgAB8ADwAXAAUADwAhABcAEAAWAAQAEAAiABYABAAgAA4ABAAWACAABQAjABEABQAXACMABgAZAAcABgAYABkAEQAiABAAEQAjACIA"), -"name": "BeltTopDown", -"primitive": 3, -"uv_scale": Vector4(0, 0, 0, 0), -"vertex_count": 36, -"vertex_data": PackedByteArray("AADMEI2IAAAAAPkeREsAAP//+R5ESwAA///MEI2IAAAAAIX3ukoAAP//hfe6SgAAAAASAEDhAAD//xIAQOEAAAAAKxC/4QAAAADNEIvfAAD//80Qi98AAP//KxC/4QAA//+KVhxLAAAAAIpWHEsAAAAAHfTESgAA//8d9MRKAAAAAIX3AAAAAP//hfcAAAAAAABFGVuTAAAAAPoiZmkAAP//+iJmaQAA//9FGVuTAAAAAP//yGgAAP///v/IaAAAAAAAAGX/AAD//wAAZf8AAAAAlhP+/wAAAABGGT7sAAD//0YZPuwAAP//lhP//wAA//+MVkFpAAAAAIxWQWkAAAAAIfToaAAA//8g9OhoAAAAAP//AAAAAP///v8AAAAA") -}] -blend_shape_mode = 0 - -[sub_resource type="ArrayMesh" id="ArrayMesh_rxahx"] -resource_name = "RCSideGuard_RCSideGuard" -_surfaces = [{ -"aabb": AABB(-0.5, -0.00427932, -1.12983, 1, 0.604281, 0.169856), -"attribute_data": PackedByteArray("lm///5Zv//+Wb///lm///110//8AABfVAAAX1V10//8AAHopXXRhVAAAeilddGFUlm9hVJZvYVSWb2FUiFkX1YhZF9WIWRfViFl6KYhZeimIWXopiFl6KV10//9ddP//XXT//110YVRddGFUXXRhVEx8//9MfP//d2X//5t+//93Zf//m37//3dlYVSafmFUd2VhVJp+YVRMfGFUTHxhVOQUeinkFHop5BR6KeQUF9XkFBfV5BQX1bpUF9W6VBfVulQX1bpUeim6VHopulR6KXdlF9V3ZRfVd2UX1Xdleil3ZXopd2V6KZZv//+Wb///lm///5Zv//9ddP//AAAX1QAAF9VddP//XXRhVAAAeikAAHopXXRhVJZvYVSWb2FUlm9hVJZvYVSIWRfViFkX1YhZF9WIWRfViFl6KYhZeimIWXopiFl6KV10//9ddP//XXT//110YVRddGFUXXRhVEx8//9MfP//THz//0x8//93Zf//m37//3dl//+bfv//mn5hVHdlYVSafmFUd2VhVEx8YVRMfGFUTHxhVEx8YVTkFHop5BR6KeQUeinkFBfV5BQX1eQUF9W6VBfVulQX1bpUF9W6VBfVulR6KbpUeim6VHopulR6KXdlF9V3ZRfVd2UX1Xdleil3ZXopd2V6KQ=="), -"format": 34896613399, -"index_count": 204, -"index_data": PackedByteArray("AgAJAAcAAgAMAAkALAAIACgALAAGAAgADAAgACIADAADACAAHQAjACEAHQAmACMAHQAaACYAHQAYABoALwApADEALwAtACkAEQAyABMAEQAwADIAEAA3ADUAEAASADcAPQBCAEYAPQBBAEIAbQBDAEAAbQBpAEMARwBeADwARwBhAF4AWgBgAGUAWgBfAGAAWwBWAFQAWwBkAFYAcQBoAGwAcQByAGgATABzAHAATABPAHMATQB6AE4ATQB4AHoABAA7AAAABAA+ADsADgBFAAsADgBIAEUACgBqACoACgBEAGoAJABJAA0AJABjAEkAAQBcAB4AAQA6AFwAHwBYABwAHwBdAFgAJwBiACUAJwBnAGIAGwBmACcAGwBXAGYAHABSABYAHABZAFIAKgB0ADMAKgBqAHQAKwA/AAUAKwBrAD8ALgBrACsALgBuAGsAMwBQABQAMwB1AFAANABKAA8ANAB2AEoADwBvAC4ADwBLAG8AFQB7ADkAFQBRAHsAFwBVABkAFwBTAFUAOAB3ADYAOAB5AHcA"), -"material": SubResource("ShaderMaterial_3b5ec"), -"name": "BeltTopDown", -"primitive": 3, -"uv_scale": Vector4(0, 0, 0, 0), -"vertex_count": 124, -"vertex_data": PackedByteArray("AADMEI2IH88AAMwQjYgdwwAAzBCNiNjdAADMEI2I1t0AAPkeREu11gAA+R5ES+jfAAD5HkRLVPMAAPkeREtU8///+R5ES1Tz///5HkRLVPP///keREvo3///+R5ES7XW///MEI2I1t3//8wQjYgdw///zBCNiCHPAACF97pKqaUAAIX3ukqf6QAAhfe6SqDp//+F97pKn+n//4X3ukqg6f//hfe6Sqml//+F97pKqaUAABIAQOH/vwAAEgBA4VjAAAASAEDhv////xIAQOFYwP//EgBA4b////8SAEDh/78AACsQv+GqowAAKxC/4QP1AADNEIvf4rQAAM0Qi9/itAAAzRCL30DfAADNEIvfQN///80Qi99A3///zRCL30Df///NEIvf4rT//80Qi9/itP//KxC/4QP1//8rEL/hqqP//4pWHEv5////ilYcS/v///+KVhxL/78AAIpWHEv/vwAAilYcS/n/AACKVhxL+/8AAB30xEqiqgAAHfTESvH/AAAd9MRK8v///x30xErx////HfTESvL///8d9MRKoqoAAIX3AAD/vwAAhfcAAFTVAACF9wAA/////4X3AABU1f//hfcAAP////+F9wAA/78AAEUZW5Pk3AAARRlbk8ulAABFGVuT2d0AAEUZW5PBzQAA+iJmaZXQAAD6ImZpfrcAAPoiZmnzwQAA+iJmacPP///6ImZp88H///oiZmnwwf//+iJmaX63///6ImZpldD//0UZW5Pgwv//RRlbk8HN//9FGVuTzaX//0UZW5Pk3AAA///IaJ/pAAD//8ho5L8AAP//yGjrxQAA///IaALG///+/8hon+n///7/yGgBxv///v/IaOS////+/8hon+kAAAAAZf//vwAAAABl/1jAAAAAAGX//7///wAAZf9YwP//AABl//+///8AAGX//78AAJYT/v+B1AAAlhP+/z3AAACWE/7/d8EAAJYT/v+awQAARhk+7EHfAABGGT7sX6sAAEYZPuyqzAAARhk+7GjB//9GGT7sqcz//0YZPuxD3///Rhk+7F6r//9GGT7sQd///5YT//93wf//lhP//4LM//+WE///PcD//5YT//+B1P//jFZBaf+///+MVkFp/7///4xWQWn/vwAAjFZBaf+/AACMVkFp/78AAIxWQWn/vwAAIfToaP+/AAAh9Oho/78AACH06Gj/vwAAIfToaP+///8g9Oho/7///yD06Gj/v///IPToaP+///8g9Oho/78AAP//AAD/vwAA//8AAP//AAD//wAAVNX///7/AAD//////v8AAFTV///+/wAA/79YOle6EjUStalQqVCoUKhQMD4wvuBn4Od0RnRGdEZ0RnRGdEZ0RnRG4GceGDA+zkGoUKhQEjXsSlo6pEWx0Eyv/0r/Sv9K/0r/Sv9K/0r/SrHQslCx0LJQ/3///wAA/3/cv9y/AAD/f9y/3L//fwAAzq0v0qVFpUVoypa1aMqWtfNP80/yT/JP80/zT/JP8k9oymhKaMpoSqVFpUXOrc8tAkACQAFAAUD/fwAA/3///wJAAkABQAFA/3///wdAB0AGQAZAB0AHQAZABkD/fwAA/3///1RVVFX///9/VFVUVf///3//fwAAPZ/B4JROk86t3lcvKO3NKKHIXLcCMwGzO+wp7IDwdyuHz0YR1hPEEwIz/UyhyKJIltOAFNPKayWJTnUxPZ89H/9///+MJYulEx3eHA+6CB3+6f80JuPw4owlc1r/fwAA/3///wAA/3+LAHP/AAD/f4sAc///fwAAIcLdvVMzUrNQ03APwBGKEvJ/8v+XPZa9AMmBJPnSJw8o8h4pGOANMJg9Z0LyfwwAb+057t7x4ChTM6xMIcIhQvX/CQDx/w0A/38AAP9////1/wkA8f8NAPU/9L8JwPS/uP8bAB8ACwDz/9//4/9GAPU/CkAJwApA/3///////39U1aoq////f1TVqir/fwAA") -}] -blend_shape_mode = 0 -shadow_mesh = SubResource("ArrayMesh_gn6s2") - -[node name="Simulation" type="Node3D"] - -[node name="Building" parent="." instance=ExtResource("1_3b5ec")] - -[node name="UL1_3" parent="." instance=ExtResource("2_rxahx")] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.00308008, -0.308412, -1.61317) -local_floor_plane = Plane(0, 1, 0, -1.69159) -enable_comms = true -speed_tag_name = "UL1_3_OIP" -running_tag_name = "" -metadata/hijack_scale = true -size = Vector3(14.7823, 0.5, 1.524) -metadata/hijack_scale = true - -[node name="BladeStop" parent="." instance=ExtResource("3_gvmjx")] -transform = Transform3D(-1, -5.96046e-08, 0, 5.96046e-08, -1, 0, 0, 0, 0.448, 2.55519, 1.10247, -1.69079) -active = true - -[node name="BoxSpawner" parent="." instance=ExtResource("4_6eg1i")] -transform = Transform3D(1, 2.30012e-09, -9.31322e-10, -2.30012e-09, 1, 8.84756e-09, 9.31322e-10, -8.84756e-09, 1, -6.66841, 0.177073, -1.71267) - -[node name="Despawner" parent="." instance=ExtResource("5_rcr4s")] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 6.60256, 0.176073, -1.63491) - -[node name="SideGuard" parent="." instance=ExtResource("6_a36lg")] -transform = Transform3D(-3.26872e-07, 1, -1.98591e-08, -1.50447, -1.77722e-08, 0.913615, 3.38066, 8.87797e-08, 0.406579, -0.352454, -0.158379, 1.7058) -mesh = SubResource("ArrayMesh_rxahx") -length = 3.70031 - -[node name="UL1_3_JR_PB1" parent="." instance=ExtResource("8_kfv3x")] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.734562, -0.180284, -0.714896) -text = "JR_PB1" -enable_comms = true -pushbutton_tag_group_name = "TagGroup0" -pushbutton_tag_name = "UL1_3_JR_PB1_OIP" -lamp_tag_group_name = "TagGroup0" -lamp_tag_name = "UL1_3_JR_PB1_LT_OIP" - -[node name="HMI_UL1_3_JR_PB1" parent="." instance=ExtResource("8_kfv3x")] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -3.29688, -0.180284, -0.714896) -text = "HMI_JR_PB1" -button_color = Color(1, 1, 1, 1) -enable_comms = true -pushbutton_tag_group_name = "TagGroup0" -pushbutton_tag_name = "UL1_3_JR_PB1.HMI.Start_PB" -lamp_tag_group_name = "TagGroup0" - -[node name="HMI_UL1_3_JR_PB2" parent="." instance=ExtResource("8_kfv3x")] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -4.1626, -0.180284, -0.714896) -text = "HMI_JR_PB2" -button_color = Color(1, 1, 1, 1) -enable_comms = true -pushbutton_tag_group_name = "TagGroup0" -pushbutton_tag_name = "UL1_3_JR_PB2.HMI.Start_PB" -lamp_tag_group_name = "TagGroup0" - -[node name="UL1_3_JR_PB2" parent="." instance=ExtResource("8_kfv3x")] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.914809, -0.180284, -0.714896) -text = "JR_PB2" -enable_comms = true -pushbutton_tag_group_name = "TagGroup0" -pushbutton_tag_name = "UL1_3_JR_PB2_OIP" -lamp_tag_group_name = "TagGroup0" -lamp_tag_name = "UL1_3_JR_PB2_LT_OIP" - -[node name="MCM_Start_PB" parent="." instance=ExtResource("8_kfv3x")] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.31822, -0.180284, -0.714896) -text = "MCM_START" -toggle = true -lamp = true -enable_comms = true -pushbutton_tag_group_name = "TagGroup0" -pushbutton_tag_name = "UL1_3_VFD1.CTRL.STS.MCM_Started" -lamp_tag_group_name = "TagGroup0" -lamp_tag_name = "UL1_3_VFD1.CTRL.STS.MCM_Started" - -[node name="UL1_3_JPE1" parent="." instance=ExtResource("9_bk1n2")] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.87801, -0.080121, -2.97105) -max_range = 1.684 -enable_comms = true -tag_name = "UL1_3_JPE1_OIP" - -[node name="Utils" type="Node" parent="."] -script = ExtResource("10_ow4ia") - -[node name="HMI_Start_PB" type="Label3D" parent="."] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -3.29096, 0.183071, -0.697029) -text = "HMI -" - -[node name="HMI_Start_PB2" type="Label3D" parent="."] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -4.16515, 0.183071, -0.697029) -text = "HMI -" diff --git a/Simulations/STATION_JR_PB/OIP/station_jr_pb.gd b/Simulations/STATION_JR_PB/OIP/station_jr_pb.gd index 8c99163..a36d351 100644 --- a/Simulations/STATION_JR_PB/OIP/station_jr_pb.gd +++ b/Simulations/STATION_JR_PB/OIP/station_jr_pb.gd @@ -16,6 +16,7 @@ func _ready() -> void: func _on_simulation_started() -> void: OIPComms.register_tag(tag_group, "[PLC]UL1_3_JR_PB1.CTRL.STS.Log.LEN", 1) + OIPComms.register_tag(tag_group, "[PLC]UL1_3_JR_PB1.HMI.STATE", 1) # Register all 82 DATA tags for i in range(82): @@ -25,6 +26,7 @@ func _on_simulation_started() -> void: func _physics_process(delta: float) -> void: box_spawner.disable = ul_1_3.speed == 0 + #print(OIPComms.read_int32(tag_group,"[PLC]UL1_3_JR_PB1.HMI.STATE")) #print("Log String: ", Utils.read_string(tag_group, "UL1_3_JR_PB1.CTRL.STS.Log")) diff --git a/Simulations/STATION_JR_PB/OIP/utils.gd b/Simulations/STATION_JR_PB/OIP/utils.gd index 468d51c..5d6e894 100644 --- a/Simulations/STATION_JR_PB/OIP/utils.gd +++ b/Simulations/STATION_JR_PB/OIP/utils.gd @@ -1,31 +1,7 @@ -@tool +class_name Utils extends Node -@onready var box_spawner: BoxSpawner = $"../BoxSpawner" -@onready var ul_1_3: BeltConveyorAssembly = $"../UL1_3" -@onready var hmi_start_pb: PushButton = $"../HMI_UL1_3_JR_PB1" -@onready var hmi_ul_1_3_jr_pb_2: PushButton = $"../HMI_UL1_3_JR_PB2" -var color_1 -var color_2 -var tag_group = "TagGroup0" -var hmi_start_color_1 = "UL1_3_JR_PB1.HMI.Start_Color" -var hmi_start_color_2 = "UL1_3_JR_PB2.HMI.Start_Color" -var display_color_1 -var display_color_2 -func _ready() -> void: - SimulationEvents.simulation_started.connect(_on_simulation_started) - -func _on_simulation_started() -> void: - OIPComms.register_tag(tag_group,hmi_start_color_1,1) - OIPComms.register_tag(tag_group,hmi_start_color_2,1) - OIPComms.register_tag(tag_group, "UL1_3_JR_PB1.CTRL.STS.Log.LEN", 1) - - # Register all 82 DATA tags - for i in range(82): - var data_tag = "UL1_3_JR_PB1.CTRL.STS.Log.DATA[" + str(i) + "]" - OIPComms.register_tag(tag_group, data_tag, 1) - -func read_string(tag_group_name: String, base_tag_name: String) -> String: +static func read_string(tag_group_name: String, base_tag_name: String) -> String: """Reads the log string from PLC DATA array""" var result = "" @@ -53,37 +29,3 @@ func read_string(tag_group_name: String, base_tag_name: String) -> String: result += char(char_value) return result - -func _physics_process(delta: float) -> void: - - box_spawner.disable = ul_1_3.speed == 0 - color_1 = OIPComms.read_int32(tag_group,hmi_start_color_1) - color_2 = OIPComms.read_int32(tag_group,hmi_start_color_2) - - #print("Log String: ", read_string(tag_group, "UL1_3_JR_PB1.CTRL.STS.Log")) - - match color_1: - 1: - display_color_1 = Color.CHOCOLATE - 2: - display_color_1 = Color.GRAY - 3: - display_color_1 = Color.GREEN - 4: - display_color_1 = Color.BLACK - _: - display_color_1 = Color.WHITE - match color_2: - 1: - display_color_2 = Color.CHOCOLATE - 2: - display_color_2 = Color.GRAY - 3: - display_color_2 = Color.GREEN - 4: - display_color_2 = Color.BLACK - _: - display_color_2 = Color.WHITE - hmi_start_pb.button_color = display_color_1 - hmi_ul_1_3_jr_pb_2.button_color = display_color_2 - diff --git a/Simulations/STATION_JR_PB/PLC/STATION_JR_PB.L5X b/Simulations/STATION_JR_PB/PLC/STATION_JR_PB.L5X index 4ba88db..d88f18d 100644 --- a/Simulations/STATION_JR_PB/PLC/STATION_JR_PB.L5X +++ b/Simulations/STATION_JR_PB/PLC/STATION_JR_PB.L5X @@ -1,6 +1,6 @@  - - + @@ -1065,7 +1065,7 @@ Pressed]]> - - + @@ -1204,21 +1204,37 @@ Pressed]]> + + + - - - - - + + + + + + + + + + + + + + @@ -2387,32 +2403,32 @@ Pressed]]> - + - + - + - - + + - + - + - + @@ -2426,21 +2442,21 @@ Pressed]]> - + - + - + ],[0],0,1,0,1,0,0],[[1,[12,'UL1_3 Jammed$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00' + ]],[0,[12,'UL1_3 Jammed$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00' + ],1]]]]]> @@ -2448,7 +2464,7 @@ Pressed]]> - + @@ -2475,20 +2491,20 @@ Pressed]]> - + - + - + - + - + @@ -2497,12 +2513,12 @@ Pressed]]> - + - + - + @@ -2511,10 +2527,10 @@ Pressed]]> - + - + @@ -2527,13 +2543,13 @@ Pressed]]> - + ],1]]]]]> @@ -2541,7 +2557,7 @@ Pressed]]> - + @@ -2568,9 +2584,9 @@ Pressed]]> - + - + @@ -2595,7 +2611,7 @@ Pressed]]> - + @@ -2604,10 +2620,10 @@ Pressed]]> - + - + @@ -2620,10 +2636,10 @@ Pressed]]> - + - + @@ -2640,7 +2656,7 @@ Pressed]]> ]],[0,[0,'$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00' ],[0,'$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00' ],[0,'$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00' - ],[0],3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[[0,0,[0,'$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00' + ],[0],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[[0,0,[0,'$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00' ],[0,'$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00' ],0,0],[0,0,0,4,[0,'$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00' ],0]]]]]> @@ -2707,7 +2723,7 @@ Pressed]]> - + @@ -2800,50 +2816,45 @@ Pressed]]> - + - + - + - + - + - + - + - - - - - - +