ros 与 sony ps3joy

    xiaoxiao2021-12-14  20

    ps3  joystick 连不上蓝牙接收器解决办法:

    1、参考ps3joy 官文

    2、拔下蓝牙接收器,再插入蓝牙接收器,按下p键,按一下就好

    发现每次连上之后第二次就连不上了,发现拔下接收器之后再连就可以了。。

    发布 cmd_vel, 订阅 Joy,,数据从摇杆进来,转换成速度发布出去,,,前提是摇杆connection active,,,sudo jstest /dev/input/js0  对按下按钮应数据有变化。

    #!/usr/bin/env python import rospy from geometry_msgs.msg import Twist from sensor_msgs.msg importJoy class Ps3Learning(object):     def __init__(self):         self.cmd = None         rospy.init_node("ps3joyLearning_node")         rospy.Subscriber("/gl/joy", Joy, self.callback)         rospy.on_shutdown(self.shutdown)          velpub = rospy.Publisher('/gl/cmd_vel',Twist, queue_size=10)         rate = rospy.Rate(20)         while not rospy.is_shutdown():             rate.sleep()             if self.cmd:                 velpub.publish(self.cmd)     def shutdown(self):         rospy.loginfo('shut down now..')     def callback(self,data):         rospy.loginfo(data)         ccmd = Twist()         if data.buttons[4] ==1 or data.buttons[6] ==1:  #go line             if data.buttons[4] ==1:                 ccmd.linear.x = 1             else:                 ccmd.linear.x = -1         else:             ccmd.linear.x = 0         if data.buttons[5] ==1 or data.buttons[7] ==1:  #rotate             if data.buttons[7] ==1:                 ccmd.angular.z = 0.6              else:                 ccmd.angular.z = -0.6         else:             ccmd.angular.z = 0         self.cmd = ccmd if __name__ == '__main__':     Ps3Learning()

    <launch>   <node pkg="learning_ps3joy" type="listener.py" name="learningPs3">     <remap from="/gl/cmd_vel" to="/turtle1/cmd_vel"/>     <remap from="/gl/joy" to="/joy"/>   </node>   <node pkg="joy" type="joy_node" name="joystick"/> </launch>

    然后我早上摇了半天。。

    转载请注明原文地址: https://ju.6miu.com/read-965491.html

    最新回复(0)