首页 > 其他分享 >Franka demo1 - 输出机器人状态(echo_robot_state)

Franka demo1 - 输出机器人状态(echo_robot_state)

时间:2024-07-09 23:34:57浏览次数:17  
标签:Franka 机器人 robot echo state include

// Copyright (c) 2023 Franka Robotics GmbH
// Use of this source code is governed by the Apache-2.0 license, see LICENSE
#include <iostream>

#include <franka/exception.h>
#include <franka/robot.h>

/**
 * @example echo_robot_state.cpp
 * An example showing how to continuously read the robot state.该示例展示如何连续读取机器人状态(1k Hz)
 */

int main(int argc, char** argv) { // 输入机器人IP
  if (argc != 2) {
    std::cerr << "Usage: " << argv[0] << " <robot-hostname>" << std::endl;
    return -1;
  }

  try {
    franka::Robot robot(argv[1]); // 初始化机器人模型 

    size_t count = 0;
    robot.read([&count](const franka::RobotState& robot_state) { // 连续回调读取机器人状态
      // Printing to std::cout adds a delay. This is acceptable for a read loop such as this, but
      // should not be done in a control loop.
      std::cout << robot_state << std::endl;
      return count++ < 100; // 读取100次,返回false, 停止读取。
    });

    std::cout << "Done." << std::endl;
  } catch (franka::Exception const& e) {
    std::cout << e.what() << std::endl;
    return -1;
  }

  return 0;
}

 

 

标签:Franka,机器人,robot,echo,state,include
From: https://www.cnblogs.com/ai-ldj/p/18292925

相关文章

  • Franka Robot 模型库
    Franka 机器人模型库提供:所有机器人关节的正向运动学。所有机器人关节的主体和零雅可比矩阵。动态参数:惯性矩阵、科里奥利和离心矢量、重力矢量。请注意,加载模型库后,您可以计算任意机器人状态的运动学和动态参数,而不仅仅是当前状态。您还可以以非实时方式使用模型库,例......
  • Franak Robot State详解
    机器人状态以1kHz的速率提供机器人传感器读数和估计值。它提供:关节级信号:电机和估计的关节角度及其导数、关节扭矩和导数、估计的外部扭矩、关节碰撞/接触。笛卡尔级信号:笛卡尔位姿、配置的末端执行器和负载参数、作用于末端执行器的外部扳手、笛卡尔碰撞。接口信号:最后的......
  • Franka机器人中的低通滤波器和速率限制器之间的区别和联系
    Franka机器人中的低通滤波器和速率限制器之间存在以下区别和联系:作用目的:低通滤波器的作用是抑制高频噪声,平滑控制指令,提高系统稳定性。速率限制器的作用是限制关节运动的速度变化率,避免机器人产生过大的加速度和扭矩,保护机械系统。作用对象:低通滤波器作用于控......
  • Franka 内部关节阻抗控制器和内部笛卡尔阻抗控制器的区别
    Franka机器人内部的关节阻抗控制器和笛卡尔阻抗控制器之间的本质区别如下:1.控制空间关节空间vs.笛卡尔空间:关节阻抗控制器工作在关节空间,即以关节角度、关节速度和关节扭矩为控制变量。笛卡尔阻抗控制器工作在笛卡尔空间,即以末端执行器的位置、速度和力作为控制变量。......
  • Franka libfranka 介绍
     libfranka是FCI客户端的C++实现。它处理与Control的网络通信,并提供接口以轻松实现以下功能:执行非实时命令来控制手并配置手臂参数。执行实时命令来运行您自己的1kHz控制循环。读取机器人状态以1kHz的频率获取传感器数据。访问模型库来计算所需的运......
  • Franka Robot 机器人状态专有名词解释
    O_T_EE:末端执行器(EndEffector)在Base坐标系中的位姿。O_T_EE_c:最新指令的末端执行器(EE)在Base坐标系中的位姿。O_T_EE_d:期望末端执行器(EE)在Base坐标系中的位姿。F_T_EE:末端执行器在法兰坐标(flangeframe)中的位姿,一般中间会间隔一个标称末端执行器坐标系,实际安装......
  • Franka 末端执行器(End-Effector)与法兰(Flange)
    在Franka机器人中,末端执行器(End-Effector)与法兰(Flange)之间存在一些区别:功能定义:末端执行器(End-Effector)指安装在手腕末端的工具,如机械手爪、焊枪、涂料喷头等,用于执行特定的任务。法兰(Flange)则指机器人手腕末端的机械接口,用于安装各种末端执行器。连接方式:......
  • Franka 机器人中,标称末端执行器(Nominal End-Effector)与末端执行器(End-Effector)之
    在Franka机器人中,标称末端执行器(NominalEnd-Effector)与末端执行器(End-Effector)之间也存在一些区别。具体如下:定义:标称末端执行器(NominalEnd-Effector)是指Franka机器人在设计和制造时预设的、默认的末端执行器。末端执行器(End-Effector)则是指实际安装在机器......
  • Franka Ros2 Build & Install
    !franka_ros2在Windows上不受支持。franka_ros2repo包含libfranka的ROS2集成 。 franka_ros2正在快速开发中。预计会出现重大变化。在 GitHub上报告错误。先决条件:ROS2Humble安装( ros-humble-desktop)或带有DevContainer的VSCodeIDE。PREEMPT_RT内核......
  • Franka Linux 设置实时内核 PREEMPT_RT
    为了使用控制您的机器人libfranka,工作站PC上的控制器程序必须在内核下以实时优先级PREEMPT_RT运行。本节介绍了修补内核以支持 PREEMPT_RT并创建安装包的过程。内核不支持NVIDIA二进制驱动程序PREEMPT_RT。 sudoapt-getinstallbuild-essentialbccurlca-certific......