From ee1385ce7ccc8edcb8391f014e15c75cd0f3be6f Mon Sep 17 00:00:00 2001
From: ft-Demo <fischertechnik-team@fischer.de>
Date: Mon, 25 Oct 2021 15:24:58 +0000
Subject: [PATCH] commit by robo pro coding

---
 lib/camera.py                     |  4 +--
 lib/camera.xml                    |  2 +-
 lib/display.qml                   |  4 +--
 lib/display.xml                   |  2 +-
 omniwheels_x4_soccer_goal.blockly | 44 ++++++++++++++++++++++---------
 omniwheels_x4_soccer_goal.py      |  2 +-
 6 files changed, 39 insertions(+), 19 deletions(-)

diff --git a/lib/camera.py b/lib/camera.py
index cfb1329..43e038c 100644
--- a/lib/camera.py
+++ b/lib/camera.py
@@ -8,7 +8,7 @@ TXT_M_USB_1_camera.set_width(320)
 TXT_M_USB_1_camera.set_fps(15)
 TXT_M_USB_1_camera.start()
 
-ball_detector = txt_factory.camera_factory.create_ball_detector(0, 0, 320, 240, 5, 80, -100, 100, [255,134,62], 20)
+ball_detector = txt_factory.camera_factory.create_ball_detector(0, 0, 320, 240, 5, 80, -100, 100, [200,113,52], 20)
 TXT_M_USB_1_camera.add_detector(ball_detector)
 
 blocked_area_right = txt_factory.camera_factory.create_blocked_area(240, 190, 80, 50)
@@ -20,6 +20,6 @@ TXT_M_USB_1_camera.add_blocked_area(blocked_area_left)
 ball_detector_goal_right = txt_factory.camera_factory.create_ball_detector(0, 70, 320, 120, 10, 120, -100, 100, [183,137,26], 20)
 TXT_M_USB_1_camera.add_detector(ball_detector_goal_right)
 
-ball_detector_goal_left = txt_factory.camera_factory.create_ball_detector(0, 70, 320, 120, 10, 120, -100, 100, [65,138,31], 20)
+ball_detector_goal_left = txt_factory.camera_factory.create_ball_detector(0, 70, 320, 120, 10, 120, -100, 100, [57,117,47], 20)
 TXT_M_USB_1_camera.add_detector(ball_detector_goal_left)
 
diff --git a/lib/camera.xml b/lib/camera.xml
index df11a08..7d01b69 100644
--- a/lib/camera.xml
+++ b/lib/camera.xml
@@ -1 +1 @@
-<xml type="camera" verion="1" version="2" rotate="0" height="240" width="320" fps="15"><item id="2" class="BallDetector"><name>ball_detector</name><color>#ff863e</color><tolerance>20</tolerance><min_ball_diameter>5</min_ball_diameter><max_ball_diameter>80</max_ball_diameter><start_range_value>-100</start_range_value><end_range_value>100</end_range_value><geometry><x>0</x><y>0</y><width>320</width><height>240</height></geometry></item><item id="4" class="BlockedArea"><name>blocked_area_right</name><geometry><x>240</x><y>190</y><width>80</width><height>50</height></geometry></item><item id="5" class="BlockedArea"><name>blocked_area_left</name><geometry><x>0</x><y>190</y><width>80</width><height>50</height></geometry></item><item id="12" class="BallDetector"><name>ball_detector_goal_right</name><color>#b7891a</color><tolerance>20</tolerance><min_ball_diameter>10</min_ball_diameter><max_ball_diameter>120</max_ball_diameter><start_range_value>-100</start_range_value><end_range_value>100</end_range_value><geometry><x>0</x><y>70</y><width>320</width><height>120</height></geometry></item><item id="11" class="BallDetector"><name>ball_detector_goal_left</name><color>#418a1f</color><tolerance>20</tolerance><min_ball_diameter>10</min_ball_diameter><max_ball_diameter>120</max_ball_diameter><start_range_value>-100</start_range_value><end_range_value>100</end_range_value><geometry><x>0</x><y>70</y><width>320</width><height>120</height></geometry></item></xml>
\ No newline at end of file
+<xml type="camera" verion="1" version="2" rotate="0" height="240" width="320" fps="15"><item id="2" class="BallDetector"><name>ball_detector</name><color>#c87134</color><tolerance>20</tolerance><min_ball_diameter>5</min_ball_diameter><max_ball_diameter>80</max_ball_diameter><start_range_value>-100</start_range_value><end_range_value>100</end_range_value><geometry><x>0</x><y>0</y><width>320</width><height>240</height></geometry></item><item id="4" class="BlockedArea"><name>blocked_area_right</name><geometry><x>240</x><y>190</y><width>80</width><height>50</height></geometry></item><item id="5" class="BlockedArea"><name>blocked_area_left</name><geometry><x>0</x><y>190</y><width>80</width><height>50</height></geometry></item><item id="12" class="BallDetector"><name>ball_detector_goal_right</name><color>#b7891a</color><tolerance>20</tolerance><min_ball_diameter>10</min_ball_diameter><max_ball_diameter>120</max_ball_diameter><start_range_value>-100</start_range_value><end_range_value>100</end_range_value><geometry><x>0</x><y>70</y><width>320</width><height>120</height></geometry></item><item id="11" class="BallDetector"><name>ball_detector_goal_left</name><color>#39752f</color><tolerance>20</tolerance><min_ball_diameter>10</min_ball_diameter><max_ball_diameter>120</max_ball_diameter><start_range_value>-100</start_range_value><end_range_value>100</end_range_value><geometry><x>0</x><y>70</y><width>320</width><height>120</height></geometry></item></xml>
\ No newline at end of file
diff --git a/lib/display.qml b/lib/display.qml
index 0cab849..3261861 100644
--- a/lib/display.qml
+++ b/lib/display.qml
@@ -29,7 +29,7 @@ TXTWindow {
     elide: Text.ElideRight
     x: 60
     y: 70
-    width: 100
+    width: 179
     height: 40
   }
   TXTLabel {
@@ -39,7 +39,7 @@ TXTWindow {
     elide: Text.ElideRight
     x: 60
     y: 120
-    width: 100
+    width: 180
     height: 40
   }
   TXTLabel {
diff --git a/lib/display.xml b/lib/display.xml
index 211e50a..10a8593 100644
--- a/lib/display.xml
+++ b/lib/display.xml
@@ -1 +1 @@
-<xml type="display" version="2"><item id="4" class="TXTSwitch"><name>txt_switch_active</name><enabled>true</enabled><checked>true</checked><text>START</text><geometry><x>60</x><y>171</y><width>100</width><height>40</height></geometry></item><item id="5" class="TXTLabel"><name>txt_label_ball</name><text>-</text><geometry><x>60</x><y>70</y><width>100</width><height>40</height></geometry></item><item id="6" class="TXTLabel"><name>txt_label_goal</name><text>-</text><geometry><x>60</x><y>120</y><width>100</width><height>40</height></geometry></item><item id="7" class="TXTLabel"><name>txt_label_ball_</name><text>ball</text><geometry><x>20</x><y>70</y><width>40</width><height>40</height></geometry></item><item id="8" class="TXTLabel"><name>txt_label_goal_</name><text>goal</text><geometry><x>20</x><y>120</y><width>40</width><height>40</height></geometry></item><item id="9" class="TXTLabel"><name>txt_label_counters_</name><text>C1...4</text><geometry><x>20</x><y>20</y><width>40</width><height>40</height></geometry></item><item id="10" class="TXTLabel"><name>txt_label_counters</name><text>-</text><geometry><x>60</x><y>20</y><width>100</width><height>40</height></geometry></item></xml>
\ No newline at end of file
+<xml type="display" version="2"><item id="4" class="TXTSwitch"><name>txt_switch_active</name><enabled>true</enabled><checked>true</checked><text>START</text><geometry><x>60</x><y>171</y><width>100</width><height>40</height></geometry></item><item id="5" class="TXTLabel"><name>txt_label_ball</name><text>-</text><geometry><x>60</x><y>70</y><width>179</width><height>40</height></geometry></item><item id="6" class="TXTLabel"><name>txt_label_goal</name><text>-</text><geometry><x>60</x><y>120</y><width>180</width><height>40</height></geometry></item><item id="7" class="TXTLabel"><name>txt_label_ball_</name><text>ball</text><geometry><x>20</x><y>70</y><width>40</width><height>40</height></geometry></item><item id="8" class="TXTLabel"><name>txt_label_goal_</name><text>goal</text><geometry><x>20</x><y>120</y><width>40</width><height>40</height></geometry></item><item id="9" class="TXTLabel"><name>txt_label_counters_</name><text>C1...4</text><geometry><x>20</x><y>20</y><width>40</width><height>40</height></geometry></item><item id="10" class="TXTLabel"><name>txt_label_counters</name><text>-</text><geometry><x>60</x><y>20</y><width>100</width><height>40</height></geometry></item></xml>
\ No newline at end of file
diff --git a/omniwheels_x4_soccer_goal.blockly b/omniwheels_x4_soccer_goal.blockly
index 362b793..e2090dc 100644
--- a/omniwheels_x4_soccer_goal.blockly
+++ b/omniwheels_x4_soccer_goal.blockly
@@ -346,33 +346,53 @@
                                                                                                                                         <mutation elseif="0" else="1"/>
                                                                                                                                         <value name="IF0">
                                                                                                                                           <block type="logic_operation" id="F*6cCZOW)ukbgn9K8?SO" inline="false">
-                                                                                                                                            <field name="OP">OR</field>
+                                                                                                                                            <field name="OP">AND</field>
                                                                                                                                             <value name="A">
                                                                                                                                               <block type="logic_compare" id="gQMo_h|S:{G:nr]1=UW4">
-                                                                                                                                                <field name="OP">LTE</field>
+                                                                                                                                                <field name="OP">GT</field>
                                                                                                                                                 <value name="A">
-                                                                                                                                                  <block type="variables_get" id="@8MLRa^g0hU[CeMJ#Wdh">
-                                                                                                                                                    <field name="VAR" id="q#H`+Gwt~43Dh@fu;G-D">posy_ball</field>
+                                                                                                                                                  <block type="math_arithmetic" id="g#5+UTr_8H_R-F]F:wXY">
+                                                                                                                                                    <field name="OP">MINUS</field>
+                                                                                                                                                    <value name="A">
+                                                                                                                                                      <block type="variables_get" id=",-pErfLng]qD$?z[[Fs7">
+                                                                                                                                                        <field name="VAR" id="a8;eFhj+gj?)7exUyU;p">posy_goal_left</field>
+                                                                                                                                                      </block>
+                                                                                                                                                    </value>
+                                                                                                                                                    <value name="B">
+                                                                                                                                                      <block type="variables_get" id="@8MLRa^g0hU[CeMJ#Wdh">
+                                                                                                                                                        <field name="VAR" id="q#H`+Gwt~43Dh@fu;G-D">posy_ball</field>
+                                                                                                                                                      </block>
+                                                                                                                                                    </value>
                                                                                                                                                   </block>
                                                                                                                                                 </value>
                                                                                                                                                 <value name="B">
-                                                                                                                                                  <block type="variables_get" id=",-pErfLng]qD$?z[[Fs7">
-                                                                                                                                                    <field name="VAR" id="a8;eFhj+gj?)7exUyU;p">posy_goal_left</field>
+                                                                                                                                                  <block type="math_number" id="Wzx3MWFz@%Jz9y{C/Qp1">
+                                                                                                                                                    <field name="NUM">-15</field>
                                                                                                                                                   </block>
                                                                                                                                                 </value>
                                                                                                                                               </block>
                                                                                                                                             </value>
                                                                                                                                             <value name="B">
-                                                                                                                                              <block type="logic_compare" id="KqQ*Wu/:9}*:Cv5}e9ql">
-                                                                                                                                                <field name="OP">LTE</field>
+                                                                                                                                              <block type="logic_compare" id="8B#3C:X3GH?2=7:Pz69)">
+                                                                                                                                                <field name="OP">GT</field>
                                                                                                                                                 <value name="A">
-                                                                                                                                                  <block type="variables_get" id="sLP@4jf@Rmdfg+aDCR]T">
-                                                                                                                                                    <field name="VAR" id="q#H`+Gwt~43Dh@fu;G-D">posy_ball</field>
+                                                                                                                                                  <block type="math_arithmetic" id="BVT`l59)jj8X[?{ToBh@">
+                                                                                                                                                    <field name="OP">MINUS</field>
+                                                                                                                                                    <value name="A">
+                                                                                                                                                      <block type="variables_get" id="r56n`}OQ/*+nk-rCW$m.">
+                                                                                                                                                        <field name="VAR" id="+j/X+RCIMajR28(u#7DG">posy_goal_right</field>
+                                                                                                                                                      </block>
+                                                                                                                                                    </value>
+                                                                                                                                                    <value name="B">
+                                                                                                                                                      <block type="variables_get" id="u,9zl8#.bgLY`eV8SG6g">
+                                                                                                                                                        <field name="VAR" id="q#H`+Gwt~43Dh@fu;G-D">posy_ball</field>
+                                                                                                                                                      </block>
+                                                                                                                                                    </value>
                                                                                                                                                   </block>
                                                                                                                                                 </value>
                                                                                                                                                 <value name="B">
-                                                                                                                                                  <block type="variables_get" id="r56n`}OQ/*+nk-rCW$m.">
-                                                                                                                                                    <field name="VAR" id="+j/X+RCIMajR28(u#7DG">posy_goal_right</field>
+                                                                                                                                                  <block type="math_number" id="{pD26^qSv`7.;d_.f@0c">
+                                                                                                                                                    <field name="NUM">-15</field>
                                                                                                                                                   </block>
                                                                                                                                                 </value>
                                                                                                                                               </block>
diff --git a/omniwheels_x4_soccer_goal.py b/omniwheels_x4_soccer_goal.py
index 7058bb4..21f192c 100644
--- a/omniwheels_x4_soccer_goal.py
+++ b/omniwheels_x4_soccer_goal.py
@@ -322,7 +322,7 @@ while True:
         if posx_ball != None and posy_ball != None:
             if posx_goal_left != None and posx_goal_right != None:
                 state = 'BALL_GOAL_BOTH'
-                if posy_ball <= posy_goal_left or posy_ball <= posy_goal_right:
+                if posy_goal_left - posy_ball > -15 and posy_goal_right - posy_ball > -15:
                     soundGoal()
                 else:
                     if posx_ball > posx_goal_left and posx_ball < posx_goal_right:
-- 
GitLab