"ROS" 如何通过 SSH 远程控制 Python 脚本

How does "ROS" Remote Control Python script over SSH

我有一个 python 文件,可以在凉亭模拟器上驾驶车辆。从 PC 运行 测试 python 文件向车辆发送命令并继续前进没有问题。当我尝试发送相同的命令时 (python drive.py ) 通过 SSH ros 包出现以下错误。那是我的问题。

kc@kc-GE60-2PC:~$ ssh remoteMachine@192.0.0.1 python moveVehicle.py
remoteMachine@'s password: 
Traceback (most recent call last):
  File "drive.py", line 15, in <module>
    import rospy
  File "/usr/lib/python2.7/dist-packages/rospy/__init__.py", line 49, in <module>
    from .client import spin, myargv, init_node, \
  File "/usr/lib/python2.7/dist-packages/rospy/client.py", line 52, in <module>
    import roslib
  File "/usr/lib/python2.7/dist-packages/roslib/__init__.py", line 54, in <module>
    import roslib.stacks
  File "/usr/lib/python2.7/dist-packages/roslib/stacks.py", line 46, in <module>
    import roslib.packages
  File "/usr/lib/python2.7/dist-packages/roslib/packages.py", line 49, in <module>

  from catkin.find_in_workspaces import find_in_workspaces as catkin_find

  ImportError: No module named catkin.find_in_workspaces

我也尝试过 运行 使用 .sh 脚本。但是报错什么都没改。

kc@kc-GE60-2PC:~$ ssh remoteMachine@192.0.0.1 ./testDrive.sh

*****SAME ERROR WİTH ABOVE CASE*****

我也尝试过:(通常在没有 SSH 的情况下执行并且代码运行良好)

remoteMachine@remoteMachine:~$ ./testDrive.sh 
Success Result Vehicle Moving:)
..


remoteMachine@remoteMachine:~$ python moveVehicle.py 
Success Result Vehicle Moving:)
..

误差近似

错误貌似是ROS和$PythonPATH环境冲突的问题。因此,如果我遇到此错误,代码永远不会 work.I 出现错误,只有 SSH 通常代码和程序包工作正常。那么你正在思考的问题是什么issue?

这是我的问题:

如何通过 SSH 执行我的脚本而不卡住任何 ROS 环境问题。

似乎缺少模块。尝试检查是否安装了 catkin 模块。

http://docs.ros.org/melodic/api/catkin/html/user_guide/installation.html

它应该按原样安装,但可能丢失了。

sudo apt-get install cmake python-catkin-pkg python-empy python-nose libgtest-dev
sudo pip install -U catkin_pkg

如果已安装,请从终端尝试 运行。 运行 python 并执行:

import catkin.find_in_workspaces

如果模块存在,请在脚本开头的 sys.path 中添加它的路径。