From 6eb2e48463b68946b25667d7d5079b325934b454 Mon Sep 17 00:00:00 2001
From: Emil Harlan <eharlan@uni-bremen.de>
Date: Thu, 1 Jun 2023 11:16:31 +0200
Subject: [PATCH] a

---
 robomaster_pi/conn_vel.py | 19 ++++++++++++++-----
 1 file changed, 14 insertions(+), 5 deletions(-)

diff --git a/robomaster_pi/conn_vel.py b/robomaster_pi/conn_vel.py
index 54d1875..33af968 100644
--- a/robomaster_pi/conn_vel.py
+++ b/robomaster_pi/conn_vel.py
@@ -10,7 +10,7 @@ from geometry_msgs.msg import TransformStamped
 from geometry_msgs.msg import Twist
 from tf2_ros import TransformBroadcaster
 import os
-
+import timer
 
 from rclpy.node import Node
 
@@ -48,16 +48,25 @@ def quaternion_from_euler(ai, aj, ak):
 
 class vel_from_ros_node(Node):
     def __init__(self, my_ep_chassis):
+        self.hostname = "192.168.1.1"
+        
         super().__init__("vel_from_ros")
         self.my_ep_chassis = my_ep_chassis
         self.get_vel_from_ros_ = self.create_subscription(
             Twist, "/cmd_vel", self.pose_callback, 10)
-    
+        
+        Timer(1, self.check_connection)
+        
+            
+
+
+    def check_connection():
+        self.response = os.system("ping -c 1 " + self.hostname)
+
     def pose_callback(self, msg: Twist):
-        hostname = "192.168.1.1"
-        response = os.system("ping -c 1 " + hostname)
         
-        if((msg.angular.z == 0.0 and msg.linear.x == 0.0 and msg.linear.y == 0.0) or response != 0):
+        
+        if((msg.angular.z == 0.0 and msg.linear.x == 0.0 and msg.linear.y == 0.0) or self.response != 0):
             self.my_ep_chassis.drive_speed(x = 0, y = 0, z = 0.5)
         else:
             self.my_ep_chassis.drive_speed(x = msg.linear.x, y = -msg.linear.y, z = -msg.angular.z * (180 / math.pi))
-- 
GitLab