云台 学习笔记

2023-05-16

1.云台控制基本任务:控制相机坐标系跟踪惯性坐标系

2.yaw计算:与惯性坐标系z轴垂直的电机轴旋转不影响偏航角计算,将电机轴投影到惯性坐标系的z轴上,在roll和pitch稳定的前提下,pitch轴电机轴旋转对偏航完全没影响,因为pitch轴电机轴与惯性坐标系z轴垂直

3.设三个电机角速度为:[\dot{x} \ \dot{y} \ \dot{z}]

相机的机体角速度为:[w_x \ w_y \ w_z]

pitch轴电机对相机角速度的影响\Rightarrowpitch轴在相机坐标系的投影

\left[ \begin{matrix} 0 \\ \dot{y} \\ 0 \end{matrix} \right]

roll轴电机对相机角速度的影响\Rightarrowroll轴在相机坐标系的投影

 \left[ \begin{matrix} cos\theta & 0 & -sin\theta \\ 0 & 1 & 0 \\ sin\theta & 0 & cos\theta \end{matrix} \right] \left[ \begin{matrix} \dot{x} \\ 0 \\ 0 \end{matrix} \right]

yaw轴电机对相机角速度的影响\Rightarrowyaw轴在相机坐标系的投影 同理

云台正运动学:电机角速度\Rightarrow相机角速度

\left[ \begin{matrix} w_x \\ w_y \\ w_z \end{matrix} \right] = \left[ \begin{matrix} cos\theta & 0 & -cos\phi sin\theta \\ 0 & 1 & sin\phi \\ sin\theta & 0 & cos\phi cos\theta \end{matrix} \right] \left[ \begin{matrix} \dot{x} \\ \dot{y} \\ \dot{z} \end{matrix} \right]

云台逆运动学:相机角速度\Rightarrow电机角速度

\left[ \begin{matrix} \dot{x} \\ \dot{y} \\ \dot{z} \end{matrix} \right] = \left[ \begin{matrix} cos\theta & 0 & sin\theta \\ \frac{sin\phi sin\theta}{cos\phi} & 1 & -\frac{sin\phi cos\theta}{cos\phi} \\ -\frac{sin\theta}{cos\phi} & 0 & \frac{cos\theta}{cos\phi} \end{matrix} \right] \left[ \begin{matrix} w_x \\ w_y \\ w_z \end{matrix} \right]

先定义几个坐标系:

相机坐标系 - 和相机固连的坐标系

世界坐标系 - 东北天坐标系

机体坐标系 - 与飞机固连的坐标系

bodyheading坐标系 - 机头坐标系

4.减震球:减少飞机震动给云台带来的影响

5.云台运动的速度是由三个电机的运动速度合成的

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

云台 学习笔记 的相关文章

  • C++ std::thread 如何使用?

    C 43 43 是一种高级编程语言 xff0c 被广泛用于开发高性能 大规模 复杂的软件系统 其中一个强大的特性就是多线程编程 xff0c 而std thread是C 43 43 标准库提供的多线程支持的重要组成部分 免费虚拟手机号注册网址
  • 导航雷达回波信号格式和目标检测算法

    导航雷达回波信号格式 导航雷达回波信号格式会根据具体的雷达类型和应用场景有所不同 通常 xff0c 导航雷达回波信号包含以下几个关键参数 xff1a 距离信息 xff08 Range xff09 xff1a 雷达发送的电磁波与目标相互作用后
  • 厦门IT公司名单及联系方式

    厦门高士达科技实业有限公司 xff1a xff08 已走访并开展了座谈 xff09 地址 xff1a 厦门软件园观日路58号9楼 总机 xff1a 2958000 联系人 xff1a 童小姐 xff08 人事专员 xff09 厦门恒深智能软
  • 巧用可变参数宏、编译器内置宏和printf输出调试信息

    前言 xff1a 我们在写程序的时候 xff0c 总是或多或少会加入一些printf之类的语句用于输出调试信息 xff0c 但是printf语句有个很不方便的地方就是当我们需要发布程序的时候要一条一条的把这些语句删除 xff0c 而一旦需要
  • STM32外设寄存器地址定义

    一直都是用STM32做项目中的主控芯片 xff0c 在编程的时候 xff0c 之前一直忽视了一个问题 xff0c 那就是寄存器的位置是如何定义的 xff0c 为什么用一个USART1 gt CR操作就能够给这个CR寄存器赋值 xff1f 其
  • CoppeliaSim ( vrep ) 与 c++ ( visual studio 2019)新建基本工程

    CoppeliaSim vrep 与 c 43 43 xff08 visual studio 2019 xff09 新建基本工程 文章目录 CoppeliaSim vrep 与 c 43 43 xff08 visual studio 201
  • windows-rbdl-vs2019

    根据源码提示 xff0c 在项目属性 c 43 预处理器 预处理定义中加入定义 ifndef RBDL BUILD ADDON URDFREADER error 34 Error RBDL addon URDFReader not enab
  • 2021-11-11 机械臂路径规划学习进展

    机械臂关节空间和末端空间路径规划 关节空间路径规划简单障碍物情况 xff1a 之后搭建复杂障碍物场景 xff1a 测试发现路径规划的两个步骤 xff1a 采用了关节空间进行路径规划的方案 xff0c 原因主要是在关节空间也就是构型空间中 x
  • 2021-11-12 轨迹规划了解

    1 机器人中的轨迹规划 曲线柔顺 xff1a 五次多项式曲线 起终点位置 速度 加速度约束六个方程 虽然这三条曲线都是连续且光滑的 xff0c 但却存在一个很实际的问题 从速图曲线中可以看出在t 61 25时速度达到最大值 xff0c 没有
  • 【轨迹规划】c++ vector<vector<double>>数据传递

    轨迹信息传递 span class token macro property span class token directive hash span span class token directive keyword include s
  • 2022-3-9 Ubuntu 16 安装opencv 4.5

    ubuntu 16安装 OpenCV 3 的教程 也是安装OpenCV 3 Ubuntu 18 安装 OpenCV 4 5 的 安装完成后 xff0c 手动创建opencv pc xff1a cd usr local lib sudo mk
  • 2022-4-21 vrep深度相机Kinect 远程c++(qtcreator) opencv 保存

    从模型库里拉出来一个Kinect相机放在合适位置 xff1a 设置好像素 xff0c 不是标准像素值vrep有警告 xff08 可能数据有误 xff09 xff0c 忽略即可 同样的像素值 xff0c 在c 43 43 端 xff1a sp
  • 20220905 buffer overflow detected

    hit 64 hit span class token operator span span class token operator span span class token operator span gitprojects span
  • 泉州IT公司名录

    超牌电子有限公司 18259571509 福建泉州超牌电子有限公司成立于1997年 xff0c 是一家自主研发 生产和销售移动电源 xff0c 应急充电器等一系列锂电池为 地址 福建泉州 主营产品 移动电源 虹科安防 18060109697
  • 2023-2-24 pagmo2安装测试

    content 安装必要依赖安装boost安装TBB 安装pagmo 安装必要依赖 安装boost 依赖boost版本大于1 68 boost官网下载 安装boost 安装包解压缩后 span class token punctuation
  • 2023-4-23 Windows和Ubuntu使用网线直连搭建局域网

    1 Windows下的配置 xff1a 右键右下角的网络图标 xff08 或者右键网络 属性 xff09 更改适配器设置 以太网 右键属性 TCP IPv4 IP地址 xff08 192 168 1 3 xff09 子网掩码 xff08 2
  • traj_out variable ‘std:ofstream’ has initializer but incomplete type

    variable 39 std ofstream has initializer but incomplete type 或者是variable 39 std ifstream has initializer but incomplete
  • perl处理excelwenjian

    usr bin perl use strict use Win32 OLE qw in with use Win32 OLE Const 39 Microsoft Excel 39 Win32 OLE Warn 61 3 die on er
  • C++ox 之 lambda

    http www cnblogs com allenlooplee archive 2012 07 03 2574119 html 今天看了博文 xff0c 之前对于lambda的理解比较粗陋 xff0c 今天再学习一下 不得不说我是一个极
  • __x_a != __x_a什么时候不成立?

    define isnan x extension typeof x x a 61 x builtin expect x a 61 x a 0 在看redis源码的时候发现了一个有趣的东西 xff0c 这个宏对是否是有效的实数进行了判断 这个

随机推荐

  • pthread_mutex_trylock的问题及解决

    在需要使用非阻塞的锁时 xff0c trylock是一个比较好的选择 xff0c 但是使用的时候碰见了一些问题 xff1a 需要使用PTHREAD MUTEX ERRORCHECK NP 来定义一个检错锁 xff0c 但是不管如何都编译不过
  • thrift, Protocol Buffers and MsgPack 的序列化对比

    啥是序列化 xff1f 序列化是将对象状态转换为可保持或传输的格式的过程 与序列化相对的是反序列化 xff0c 它将流转换为对象 这两个过程结合起来 xff0c 可以轻松地存储和传输数据 为啥要序列化 xff1f 1 以某种存储形式使自定义
  • python处理xlsx

    一 读取excel 这里介绍一个不错的包xlrs 可以工作在任何平台 这也就意味着你可以在Linux下读取Excel文件 首先 xff0c 打开workbook xff1b import xlrd wb 61 xlrd open workb
  • php解析请求url并返回json数据

    lt php paserRequest SERVER 34 QUERY STRING 34 function paserRequest strReq parse str strReq 解析请求参数 cpIds 61 explode 39 3
  • 对TTL电平,232电平 CMOS电平做下总结

    xff08 一 xff09 TTL电平标准 输出 L xff1a lt 0 8V xff1b H xff1a gt 2 4V 输入 L xff1a lt 1 2V xff1b H xff1a gt 2 0V TTL器件输出低电平要小于0 8
  • twemproxy for redis使用说明及简单分析

    redis的数据量在内存高过50G时系统出现了明显的瓶颈 为了解决这个问题 xff0c 笔者找了些相关的资料 xff0c 发现了这个开源软件 功能很强大 xff0c 包含了last fm的ketama的一致性hash算法 xff0c 对于笔
  • static的map成员的初始化顺序居然和编译器相关

    我十分不敢相信这是真的 xff0c 但是确实发生了 xff0c 而且足足折腾了我5个小时 core文件的内容大概是这样 xff1a 0 0x0000003071664cba in std Rb tree decrement std Rb t
  • 创建在mac电脑本地搭建nginx,并模拟打包发布前端构建包

    1 本地安装nginx服务brew install nginx 报No such file or directory 64 rb sysopen Users wangjie Library Caches Homebrew downloads
  • 关于swiftUI和UIKit混用

    思路无非就是自定义一个结构体view实现UIViewRepresentable协议 xff0c 然后就可以作为一个swiftUI组件进行调用了 1 我们要定义一个CustomView这个名字随便起 struct CustomView UIV
  • swiftUI自定义Environment的Key

    1 创建一个结构体作为要共享的值 struct RefreshData var thresold CGFloat 61 0 var progress Double 61 0 var refreshState RefreshState 61
  • 谈谈我对iOS app从编译到完全启动的流程的理解

    从的来说编译分几个阶段 预处理 gt 代码解析 gt 汇编 gt 链接 gt 生成可执行文件 一 预处理的中进行的操作是 1 进行宏替换 2 头文件引入 include import 使用对应 h文件的内容替换这一行 xff0c 所以我们导
  • 使用最新的sdk跑旧的flutter项目遇到的坑总结

    第一次跑一个已经存在的稳定项目却不曾想analysis没报错运行起来xcode却报错 执行flutter 发现android command line没安装 xff0c 立即执行brew install android sdk安装成功后在
  • Vue实现组件间通信

    1 property 在子组件props中定义定属性 xff0c 使用时传递父组件data对象或常量值实现传值通信 2 事件传递 在子组件中通过 emit发送event第一个参数是事件名 xff0c 第二个是消息内容 xff0c 在父组件中
  • 对信号量sem的一些总结

    1 首先来说说信号量和互斥锁的区别 xff1a 信号量用在多线程多任务同步的 xff0c 一个线程完成了某一个动作就通过信号量告诉别的线程 xff0c 别的线程再进行某些动作 xff08 大家都在semtake的时候 xff0c 就阻塞在哪
  • Vue实现双向绑定原理

    在Vue实例构造时将data对象赋值给vue实例之后 xff0c vue会递归遍历data中所有键值对并作为属性赋值到vue实例中 xff0c 利用Object defineProperty 来重新定义属性的set和get函数 xff0c
  • C++ STL总结

    C 43 43 STL分为5部分 容器 xff0c 迭代器 xff0c 空间适配器 xff0c 函数对象 xff0c 泛型算法 xff0c 适配器 一 容器 理解容器的作用 容器的主要作用是用于存储对象 xff08 这里说的对象时指的是包含
  • 第一次测试题笔记(2020.11.9)

    最近写了一些编程题准备做一些笔记方便以后复习 1 字符串判等 题目描述 给定两个大小写字母 空格组成的字符串S1和S2 xff0c 他们的长度都不超过100个字符 xff0c 长度也可以为零 判断压缩掉空格并且忽略掉大小写后 xff0c 这
  • 人工智能--框架表示法

    文章目录 框架理论框架的基本结构框架的表示实例框架 框架系统框架之间的纵向联系框架之间的横向联系 框架理论 框架理论认为 xff0c 我们对世间事物的认识都是以类似框架的结构存储在记忆中的 当遇到一个新事物就从记忆中找出一个合适的框架 xf
  • 并行编译加快VS C++项目的编译速度

    最近编译的项目都比较大 xff0c 话说自己的电脑配置还行 xff0c 但编译所花的时间还是很长 xff0c 遇到需要重新编译整个项目的时候真的有回宿舍睡一觉的冲动 昨天一不小心被我发现了一款软件Xoreax IncrediBuild 今天
  • 云台 学习笔记

    1 云台控制基本任务 xff1a 控制相机坐标系跟踪惯性坐标系 2 yaw计算 xff1a 与惯性坐标系z轴垂直的电机轴旋转不影响偏航角计算 xff0c 将电机轴投影到惯性坐标系的z轴上 xff0c 在roll和pitch稳定的前提下 xf