当前位置: 首页 > wzjs >正文

wordpress vps优化安卓优化大师旧版

wordpress vps优化,安卓优化大师旧版,金色金融公司网站源码,网吧网站怎么做的ROS 一、创建工作空间目录 /home/wict/workspace/hudahua/ros/catkin_ws #初始化工作空间(仅需一次) catkin_init_workspace二:回到根目录编译 #创建正确的工作空间结构(如果尚未创建) mkdir -p ~/workspace/hudahua…

ROS
一、创建工作空间目录
/home/wict/workspace/hudahua/ros/catkin_ws

#初始化工作空间(仅需一次)
catkin_init_workspace

二:回到根目录编译

#创建正确的工作空间结构(如果尚未创建)
mkdir -p ~/workspace/hudahua/ros/catkin_ws/src
cd ~/workspace/hudahua/ros/catkin_ws/src
#将你的源码包包移动到src目录下(假设原包在上级目录)
mv ../../my_state_machine .
# 进入工作空间根目录
cd ~/workspace/hudahua/ros/catkin_ws# 编译所有包
catkin_make# 编译后更新环境变量
source devel/setup.bash

验证包是否被识别

# 检查ROS能否找到你的包
rospack find my_state_machine
# 应输出路径:/home/wict/.../catkin_ws/src/my_state_machine

三、创建ROS包
创建一个新的ROS包并添加依赖:

catkin_create_pkg my_state_machine rospy smach smach_ros std_msgs
cd my_state_machine
mkdir scripts

编写状态机代码
在scripts目录下创建Python脚本(如state_machine.py),示例代码如下:

#!/usr/bin/env python3
import rospy
from smach import State, StateMachine
from smach_ros import IntrospectionServer# 定义状态类
class StateA(State):def __init__(self):State.__init__(self, outcomes=['succeeded', 'failed'])def execute(self, userdata):rospy.loginfo("Executing State A")rospy.sleep(2)return 'succeeded'  # 或 'failed' 测试不同转移class StateB(State):def __init__(self):State.__init__(self, outcomes=['succeeded'])def execute(self, userdata):rospy.loginfo("Executing State B")rospy.sleep(1)return 'succeeded'def main():rospy.init_node('my_state_machine')# 创建状态机sm = StateMachine(outcomes=['exit'])with sm:# 添加状态并定义转移StateMachine.add('STATE_A', StateA(),transitions={'succeeded': 'STATE_B', 'failed': 'exit'})StateMachine.add('STATE_B', StateB(),transitions={'succeeded': 'STATE_A'})# 启动可视化服务器(可选)sis = IntrospectionServer('smach_server', sm, '/SM_ROOT')sis.start()# 执行状态机outcome = sm.execute()rospy.spin()sis.stop()if __name__ == '__main__':main()

确保脚本位于正确目录
根据你的目录结构,脚本应放在 my_state_machine/scripts 而非 src 目录下:

chmod +x scripts/state_machine.py

配置CMakeLists.txt
在 my_state_machine/CMakeLists.txt 末尾添加以下内容,确保ROS能识别Python脚本:

# 安装Python脚本到ROS的包路径
catkin_install_python(PROGRAMS scripts/state_machine.pyDESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION}
)

确认工作空间结构
Catkin工作空间的标准结构如下:

catkin_ws/ # 工作空间根目录(必须在此运行catkin_make)
├── build/ # 自动生成
├── devel/ # 自动生成
└── src/ # 用户代码目录
└── my_state_machine/ # 你的ROS包(必须在此!)
├── CMakeLists.txt
├── package.xml
└── scripts/

四、编译并更新环境

# 回到工作空间根目录
cd ~/workspace/hudahua/ros/catkin_ws# 清理旧编译缓存(可选)
rm -rf build/ devel/# 重新编译
catkin_make# 更新环境变量
source devel/setup.bash

五、验证运行

启动状态机

roscore

运行状态机节点

rosrun my_state_machine state_machine.py

可视化状态机(可选)
新终端中启动smach_viewer:

rosrun smach_viewer smach_viewer.py

访问localhost:8080查看状态机实时状态。

在这里插入图片描述

http://www.dtcms.com/wzjs/529031.html

相关文章:

  • 打电话拉客户用网站做广告怎么做 好做吗qq群排名优化软件
  • 海外网站seo百度广告太多
  • 同一个服务器可以做多个网站网站seo价格
  • 重庆黔江做防溺水的网站网络营销的盈利模式
  • 中交通力建设股份有限公司网站黄冈网站推广软件
  • 电商网站开发用什么语言表达seo网络推广有哪些
  • 网页网站作业制作网络营销推广专家
  • 最好的模板网站优化设计卷子答案
  • 北京商城网站建设seo是什么工作
  • 上海网站开发公司网站搜索排名优化怎么做
  • php网站开发专业是做什么的百度搜索关键词排名靠前
  • 做家常便饭网站视频运营管理平台
  • 做计划的网站百度一下你就知道百度官网
  • 上海人才招聘哪个网站好收录查询
  • ps制作个人网站百度seo有用吗
  • 上海做网站公司做网站的公司有哪些怎么在百度上发表文章
  • 政府网站建设实施的可行性分析深圳网络公司推广公司
  • saas建站没有网站源代码么免费推广的预期效果
  • 企业网站托管后果图片外链生成
  • 网站开发经理seo手机端优化
  • 省政府网站建设推广普通话手抄报模板
  • asp.net网站制作实例竞价sem托管公司
  • 怎么自己做网站教程优化技术
  • 北京网站排名优化软件网站分析报告
  • 高端模版网站新媒体运营哪个培训机构好
  • 羽毛球网站建设网站制作网页需要多少钱
  • 最专业网站建设公司哪家好千锋教育的官网
  • 深圳h5开发北京seo站内优化
  • 又拍云 wordpress使用零基础seo入门教学
  • 制作网线的基本步骤关键词优化网站排名