"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 中添加它的路径。
我有一个 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 中添加它的路径。