[docs]classBasicTest:def__init__(self):# necessary to simualate normal ASself.steering_control_engage_pub=rospy.Publisher('/mission_machine/steering_control_engage',SteeringControlEngage,queue_size=10,latch=True)# get parameters self.steering_frequency=rospy.get_param('/basic_tests/steering_frequency')self.max_angle=rospy.get_param('/basic_tests/max_angle')self.steering_wheel_offset=-0.9677self.actc_step_angle=0# steering wheel angleself.start_time=Noneself.steering_pub=rospy.Publisher('/control/steering_wheel_angle/request',SteeringWheelAngle,queue_size=10)rospy.on_shutdown(self.deactivate_steering)self.run()
[docs]defrun(self):# choose between torque and velocityself.publish_steering_angle(0)time.sleep(1/self.steering_frequency)# enable steering and choose between torque and velocityself.publish_steering_control_engage(steering_engage=True)rate=rospy.Rate(50)rospy.loginfo('[Basic Test] Go!')whilenotrospy.is_shutdown():self.actc_sinus_steering()rate.sleep()rospy.loginfo('[Basic Test] Stop!')