法奥机器人ROS2环境搭建

法奥机器人ROS2环境搭建

目录

第一章  SDK文件准备

   1.1  机器人软件版本查看

 第二章 测试平台搭建

2.1虚拟平台安装

                    2.1.1虚拟机安装 

            2.1.2ubuntu 的安装

第三章 软件环境搭建

        3.1  vscode安装

3.2vscode插件安装

3.3  ROS 及环境变量配置

3.1.1 Ros2-humble版本 安装

3.1.2  Ros-control版本安装

3.1.3   Moveit2版本安装

第四章  插件包导入及插件测试

        4.1 MOVEIT2插件包导入

4.2 RVIZ 仿真操作简介

4.3  RVIZ 与机器人实机联动操作简介


第一章  SDK文件准备

   1.1  机器人软件版本查看

               1、登录法奥机器人webapp界面,依次点击 系统设置 》》关于  查看机器人当前机器人软件版本。

   1.2  ros2SDK包下载

           用浏览器访问gitee法奥仓库   FAIR-INNOVATION (fair-innovation) - Gitee.com   然后按下图示选择对应自己版本的ROS2包。

 第二章 测试平台搭建

2.1虚拟平台安装

                    2.1.1虚拟机安装 

国内用户一般使用 Windows系统电脑,在一台电脑上安装多个系统也可以实现,单不符合大多数人的使用习惯,利用软件 “VMware workstation”可在windows上安装多种系统。

此处提供第三方的下载连接: 

VMware Workstation Pro - Download

如有需要,可网络搜索其他下载途径,并按照网络教程进行安装。

本次示例使用的版本为:VMware workstation 16 pro ;对于虚拟机软件的版本并无要求。

            2.1.2ubuntu 的安装

                1)ubuntu 是基于linux的其中一个桌面操作系统,前往ubuntu的官网下载安装镜像。ubuntu 官网中默认下载的是最新版本,SDK对于编译版本有要求,本示例中使用的是ubuntu 22.04.5 LTS 版本:ubuntu-22.04.4-desktop-amd64.iso,可参照以下连接:

https://cn.ubuntu.com/download/alternative-downloads

        如官方网站版本有更新,可网络查询其他连接以下载镜像文件。

        2)打开虚拟机软件,点击选择“创建新的虚拟机”。

        选择典型选项 >>安装光盘文件映象,选择下载的文件 >> 自定义名称及密码>>选择安装位置 >>给定硬盘大小>>点击完成后,虚拟机将自动安装。




  



  

        3)稍作等待,将进入ubuntu安装界面,跟随指引安装完成ubuntu。(相关设置如无特殊要求,使用默认安装即可。)

        安装按成后,点击立即重启,重启完成后,将进入ubuntu登陆界面,界面如下图所示,输入规定的密码,进入ubuntu系统。

        4)点击应用框,选中“setting”,打开设置界面,添加中文语言,并重启。

        重启后,界面如下图所示:

第三章 软件环境搭建

        3.1  vscode安装

        vscode 是较为常用的编辑软件,其具备众多插件,能完成多种语言的编译及编辑工作,本次作为代码查看器使用,单并非编辑代码的唯一方式。利用ubuntu的浏览器,可以直接下载vscode在ubutu的安装包。

        1)打开火狐浏览器,搜索“vscode”,进入官网界面。

        2)点击下载.deb 文件,下载安装包。

        3)打开下载的文件夹,右键空白处点击“在终端中打开”。

        4)在弹出的终端框中输入 “sudo dpkg -i code”,按下“tab”键自动补全剩下文件包名并键入,等待出现下一个输入行后即为安装完成。(期间需要输入密码,密码不可见,输入后按下键入即可)。

        5)打开应用抽屉,检查是否出现vscode图标。

3.2vscode插件安装

        vscode需要安装插件才能正常识别编程文件,点击vscode图标打开软件,并点击插件库查找插件下载。

推荐的插件如下:

chinese(simplified) 简体中文插件,修改界面语言。

c/c++  c/c++的高阶语言插件,用于支持c/c++的编写。

vscode-icons  图标插件,修改文件目录下的文件图标。

c/c++ extension pack 拓展插件

3.3  ROS 及环境变量配置

        使用第三方一键配置包能快捷安装各种利于编程的工具,包含 gcc /g++ 编译器,apt 安装工具的更新,ROS2环境等等。

3.1.1 Ros2-humble版本 安装

        此处是针对ROS2环境的一键配置,但也集成了对于c++ ,python 等等支持,一键安装,能避免诸多安装上的小问题。在任意终端界面,输入以下指令:

wget http://fishros.com/install -O fishros && . fishros

在提示中选择“1”安装 ROS 环境,。

在更换源选项时,建议使用 “1”,自动选择源文件连接再进行安装,并在接下来的具体选项中选择“2”更换系统源并清理第三方源

在接下来的版本安装中,选择 “1” humble 版本,并选择较完整的 “1”桌面版。

直至安装完成,如下图所示:

》》如遇到虚拟机与主机间无法进行复制粘贴操作,在终端中输入如下命令:

sudo su //   进入管理员模式
apt-get update//         更新apt-get
apt-get install open-vm-tools open-vm-tools-desktop //         安装VM工具
                          vmware-user //                开启服务

    重启虚拟机后重新尝试复制粘贴。

3.1.2  Ros-control版本安装

         在终端中,输入以下命令安装 ros-controller。注意:中间需要输入“Y”以继续安装。

①“ sudo apt-get install ros-humble-ros2-control ”
②“ sudo apt-get install ros-humble-ros2-controllers”

 

在终端中输入 以下命令用以验证ROS是否安装完成。

“ros”

 

3.1.3   Moveit2版本安装

        首先利用APT-GET 安装moveit 包;

使用moveit2插件,需先进行moveit2及moveit2_tutorials源码的安装。

首先,在主目录下创建文件夹作为要用的工作区“ moveit2_ws/src”

        在工作区(src文件夹)中,右键打开终端,安装git并从git上克隆Moveit2 的代码.

        注意:中间需要输入“Y”以继续安装

sudo apt install git

git clone https://github.com/ros-planning/moveit2_tutorials -b humble --depth 1 

完成后输入以下命令,完成全部代码的克隆:

“sudo apt install python3-vcstool”
“vcs import < moveit2_tutorials/moveit2_tutorials.repos”

如遇到克隆失败的项目,需要手动克隆至目录中

输入以下命令:

“git clone https://github.com/ros-planning/moveit2.git”

其中,moveit2.git 可替换为其他确实的项目名称。

            或者打开“/home/fruser/moveit2_ws/src/moveit2_tutorials/moveit2_tutorials.repos”,      将需要克隆的URL链接前, 加入 “ GitHub Proxy 最新地址发布”作为代理后,                    重新进行“vcs import < moveit2_tutorials/moveit2_tutorials.repos”的克隆。

        完成后,利用一键安装工具,安装“rosdepc”用于搜索下载依赖。进入 “moveit2_ws”文件夹,右键点击空白处打开终端,输入以下命令,查找并安装依赖项。

“wget http://fishros.com/install -O fishros && . fishros”

键入“3”,安装rosdep工具。

接着,在当前终端中输入以下指令,安装所需要的依赖库。

rosdepc update
rosdepc install --from-path src --ignore-src -r -y

依赖安装完成后,继而进行代码编译,使用“colcon ”指令进行编译,在当前终端中,输入以下指令。

colcon build --cmake-args -DCMAKE_BUILD_TYPE=Release
  1. 至此,moveit2 安装完成。                                 

第四章  插件包导入及插件测试

        4.1 MOVEIT2插件包导入

                1)fairino 提供的插件包已经更新至资料站中,可参考如下网址查看和下载对应插件包:

FAIR-INNOVATION (fair-innovation) - Gitee.comhttps://gitee.com/fair-innovation

        2) 打开“ moveit_ws/src/.”并将文件解压到当前文件夹下。注意,fairino 提供了不同机器人的使用文件,只需要解压符合现场机器人型号的文件,如需要进行示例代码 “fairino_mtc_demo”,需从技术人员处获取代码,一并放入“src”路径中,执行编译代码。

回到moveit2目录下,右键打开终端,分别执行以下命令,并指令进行编译。

colcon build --packages-select fairino_msgs
colcon build --packages-select fairino_hardware
colcon build --packages-select fairino_description
colcon build --packages-select fairino3_v6_moveit2_config(以FR3机型为例)
colcon build --packages-select fairino_mtc_demo
source install/setup.bash

至此,fairino ros2 moveit插件包需要的文件已经移动完成。

4.2 RVIZ 仿真操作简介

        1)在“moveit2_ws”文件夹下,打开终端,输入以下指令,将moveit2 生成的文件进行编译并更新。

colcon build --packages-select fairino3_v6_moveit2_config
source install/setup.bash

输入以下指令执行lunch文件。

ros2 launch fairino3_v6_moveit2_config demo.launch.py

至此,RVIZ 界面会弹出如下:

2)想要实现简单运动,只需要拖拽机器人末端的轨迹球,或者进行joint 轴关节运动。以下为常用的功能布局图:

Planning: 规划操作选窗。

Commands:指令区。

显示机器人模型的区域为机器人可视作业视窗。

         鼠标拖拽末端轨迹球,改变机器人的位置,注意,若轨迹球偏离机器人的可达位姿,机器人末端无法与轨迹球贴合。

在可视化作业区内,鼠标操作定义如下:

左键:拖动旋转视图。

右键:拖动放大视图。

中键:滚轮滑动放大视图/滚轮点击平行移动视图。

点击“Plan”按钮,可视化视图中会进行路径规划,并以虚影动作展示规划出的动作。

点击“Execute”会驱动机器人按照仿真路径运动到目标位置。

点击“Plan& Execute”会控制机器人进行路径规划并运动。

        点击“Joints”进入关节控制界面,拖拽对应关节的滑动条,同样可以改变机器人位姿。再通过“Plan& Execute”进行动作的执行。

若关闭rviz,终端进程无法退出,可以直接关闭终端或者使用“ctrl + C ”来结束进程。

4.3  RVIZ 与机器人实机联动操作简介

        1)使用RVIZ 与机器人联动,需要使用fairino_hardware 功能包,,通过fairino_hardware插件move_group将运动规划发送给moveit_control,然后转发给ros2_control,ros2_control再通过fairino_hardware插件驱动实际机器人运动,并且fairino_hardware插件还会接受实际机器人的反馈数据,从而实现rviz2仿真界面机器人模型与实际机器人的同步,从而实现用户通过rviz2界面驱动实际机器人运动功能。

注意:确认hardware 功能包需要支持机器人的软件版本,确保API对齐,以避免数据不对应导致的控制失败!!

确定机器人已经与上位机网络连接,且机器人网络IP地址为:192.168.58.2

进入如下路径:“/home/fruser/moveit2_ws/install/fairino3_v6_moveit2_config/share/fairino3_v6_moveit2_config/co nfig”
打开文件“fairino3_v6_robot.ros2_control.xacro”,将文件的第9行指令“<plugin>mock_components/GenericSystem</plugin>”修改为:

“<plugin>fairino_hardware/FairinoHardwareInterface</plugin>”。

返回“moveit2_ws”,打开终端重新输入命令,重新运行 RVIZ 代码。


source install/setup.bash
ros2 launch fairino3_v6_moveit2_config demo.launch.py

 

此时机器人应与实际链接的机器人位姿一致。

 

鼠标拖动轨迹球,改变机器人目标位置,并点击“Plan&Execute”,RVIZ会控制机器人前往目标位置,至此,ROS2 moveit2 插件包安装验证完成,

Read more

从指令到执行:OpenClaw 底层原理深度拆解 —— 一台真正会 “动手” 的本地 AI 引擎

从指令到执行:OpenClaw 底层原理深度拆解 —— 一台真正会 “动手” 的本地 AI 引擎

前言 当我们对 OpenClaw 发出一句自然语言指令:“把桌面所有超过一周的截图归档到 D 盘,再把今天的工作记录整理成 Markdown 并推送到 GitHub。” 传统 AI 会给出步骤,而 OpenClaw 会直接做完。 绝大多数文章只告诉你 OpenClaw “能做什么”,却极少解释它到底是如何做到的: * 一段文字,是怎么变成可执行的系统操作? * 它凭什么能跨 IM、跨平台、跨模型统一工作? * 高权限执行,底层是如何保证安全与可控? * 本地运行、隐私闭环,在架构上究竟如何实现? 本文不讲功能、不讲教程,只讲原理。从意图解析、任务编排、执行引擎、权限沙箱到多模态交互,带你从 0 到 1 理解 OpenClaw 的技术本质:它不是一个聊天机器人,而是一套本地优先、可解释、可审计、

别让 AI 越权!OpenClaw 权限配置完全指南

别让 AI 越权!OpenClaw 权限配置完全指南

一、限制只能聊天(纯对话模式) 适用场景:只想让 AI 帮你思考、写文案、做分析,不需要它执行任何文件操作或命令。 从 2026.3.2 版本开始,OpenClaw 默认已经收紧了权限,但如果你想确保它彻底无法调用工具,可以这样配置: 核心配置命令: bash openclaw config set tools.profile messaging tools.profile 的四种模式对比: 表格 模式能力范围适用场景messaging纯对话,禁用所有工具(文件读写、命令执行、技能调用等)只想聊天、咨询的场景minimal极简工具集(如只允许网页搜索)需要查信息但不执行操作default基础工具集(文件读写、部分命令)日常轻度使用full完整工具集(包括高风险操作)开发、自动化等场景 验证配置: bash openclaw config

AI工具泛滥时代,为什么“能力“越来越不值钱?

AI工具泛滥时代,为什么“能力“越来越不值钱?

文章目录 * 一、一个荒诞的现象:工具民主化与机会不平等 * 二、三个被误读的AI创业神话 * 三、AI创作者的真正壁垒:从"工具使用者"到"商业闭环构建者" * 四、给新手的实战建议:从0到1的行动清单 * 五、关于《脉向AI》栏目 * 六、适合谁看? 一、一个荒诞的现象:工具民主化与机会不平等 2025被称为"AI应用元年",但一个诡异的分化正在发生。 一方面,AI工具从未如此普及。ChatGPT、Midjourney、Claude、Sora、可灵、即梦……每个月都有新的"生产力神器"登上热搜。知识付费市场上,“AI副业课”" prompt工程&

构建基于 Rust 与 GLM-5 的高性能 AI 翻译 CLI 工具:从环境搭建到核心实现全解析

构建基于 Rust 与 GLM-5 的高性能 AI 翻译 CLI 工具:从环境搭建到核心实现全解析

前言 随着大语言模型(LLM)能力的飞速提升,将 AI 能力集成到终端命令行工具(CLI)中已成为提升开发效率的重要手段。Rust 语言凭借其内存安全、零成本抽象以及极其高效的异步运行时,成为构建此类高性能网络 IO 密集型应用的首选。本文将深度剖析如何使用 Rust 语言,结合智谱 AI 的 GLM-5 模型,从零构建一个支持流式输出、多语言切换及文件批处理的 AI 翻译引擎。 本文将涵盖环境配置、依赖管理、异步网络编程、流式数据处理(SSE)、命令行参数解析以及最终的二进制发布优化。 第一部分:Rust 开发环境的系统级构建 在涉足 Rust 编程之前,必须确保底层操作系统具备必要的构建工具链。Rust 虽然拥有独立的包管理器,但在链接阶段依赖于系统的 C 语言编译器和链接器,尤其是在涉及网络库(如 reqwest 依赖的 OpenSSL)