From 07579cd89a2dc4b600c8860d897e753d06af7b0a Mon Sep 17 00:00:00 2001
From: Sergi Hernandez <shernand@iri.upc.edu>
Date: Fri, 19 Feb 2021 18:03:52 +0100
Subject: [PATCH] Checked the operation of the emergency stop.

---
 include/model_car_actuators.h             |  2 +-
 src/examples/model_car_actuators_test.cpp | 23 +----------------------
 src/model_car_actuators.cpp               |  9 +++++++--
 3 files changed, 9 insertions(+), 25 deletions(-)

diff --git a/include/model_car_actuators.h b/include/model_car_actuators.h
index 47378ac..9849d08 100644
--- a/include/model_car_actuators.h
+++ b/include/model_car_actuators.h
@@ -20,7 +20,7 @@ class CModelCarActuators: public CModelCarDriverBase
   public:
     CModelCarActuators(std::string name);
     void send_command(double speed,double steering);
-    void emergency_stop(void);
+    void emergency_stop(bool active);
     void enable_ultrasounds(void);
     void disable_ultrasounds(void);
     ~CModelCarActuators(void);
diff --git a/src/examples/model_car_actuators_test.cpp b/src/examples/model_car_actuators_test.cpp
index b9fed4f..af9854b 100644
--- a/src/examples/model_car_actuators_test.cpp
+++ b/src/examples/model_car_actuators_test.cpp
@@ -34,28 +34,7 @@ int main(int argc, char *argv[])
         act_driver->send_command(vx,steer); 
       }
       act_driver->send_command(0.0,0.0); 
-
-    /*
-    if(test_watchdog)
-    {
-      std::cout << "model_car_actuators_test::main: sending watchdog" << std::endl;
-      act_driver->send_watchdog();
-    }
-
-    if(test_emergency_stop)
-    {
-      std::cout << "model_car_actuators_test::main: sending emergency stop" << std::endl;
-      act_driver->send_emergency_stop();
-    }
-
-    if(test_enable_disable_uss)
-    {
-      std::cout << "model_car_actuators_test::main: sending enable uss" << std::endl;
-      act_driver->send_enable_uss();
-      std::cout << "model_car_actuators_test::main: sending disable uss" << std::endl;
-      act_driver->send_disable_uss();
-    }
-    */
+ 
       act_driver->close();
       delete act_driver;
     }
diff --git a/src/model_car_actuators.cpp b/src/model_car_actuators.cpp
index 27a16eb..2f74566 100644
--- a/src/model_car_actuators.cpp
+++ b/src/model_car_actuators.cpp
@@ -43,9 +43,14 @@ void CModelCarActuators::send_command(double speed,double steering)
   this->send_request(ID_ARD_ACT_STEER_SERVO,1, &cmd);
 }
 
-void CModelCarActuators::emergency_stop(void)
+void CModelCarActuators::emergency_stop(bool active)
 {
-  uint8_t cmd=1;
+  uint8_t cmd;
+
+  if(active)
+    cmd=1;
+  else
+    cmd=0;
 
   this->send_request(ID_ARD_ACT_EMERGENCY_STOP,1,&cmd);
 }
-- 
GitLab