note:
2017-01-03
修正小车是反转情况的问题: Day.1
可能的原因:
坐标系转换问题
笔记
http://insaneguy.me/2015/03/25/rotation_matrix_and_quaternions/
http://insaneguy.me/2015/03/25/rotation_matrix_and_quaternions/ *四元数与旋转角度关系
pitch是围绕X轴旋转,也叫做俯仰角
yaw是围绕Y轴旋转,也叫偏航角
roll是围绕Z轴旋转,也叫翻滚角
四元数的定义:q = [w,x,y,z]其中w是实部,注意:q^2 = 1.
四元数的基本数学方程为 : q = cos (a/2) + i(x * sin(a/2)) + j(y * sin(a/2)) + k(z * sin(a/2)) 其中a表示旋转角度,(x,y,z)表示旋转轴。
Axis Orientation
In relation to a body the standard is:
- x forward–red
- y left–green
- z up–blue
Suffix Frames
In the case of cameras, there is often a second frame defined with a “_optical” suffix. This uses a slightly different convention:
- z forward
- x right
- y down
For outdoor systems where it is desireable to work under the north east down [6] (NED) convention, define an appropriately transformed secondary frame with the “_ned” suffix:
- X north
- Y east
- Z down
2017-01-04
修正小车是反转情况的问题: Day.2
发现是:/home/zero/binbin/sun/src/dobby/src/pre_posture.cpp下的下方代码有问题
:四元数和坐标转换无法兼得
geometry_msgs::Quaternion odom_quat = tf::createQuaternionMsgFromYaw(th);
tf::Quaternion tf_quat = tf::createIdentityQuaternion();
小车可能朝向本来就是反的--所以无法纠正
然而问题是,就算是位置和朝向都是反的,假使我以初始点为参照,其方向不应该是这样 ^v^
2017-01-05
寻找可以使用的无人机模型(urdf)
配置 hector_quadrotor 无人机模型 http://wiki.ros.org/hector_quadrotor
* 运行报错:No such file or directory: /home/zero/hector_quadrotor_tutorial/src/hector_quadrotor/hector_quadrotor_gazebo/urdf/quadrotor_plugins.gazebo.xacroXacro Exception(‘No such file or directory:)
检查后发现文件夹下确实缺少这个文件,将其中一个文件夹下的in去掉
2017-01-06
配置可用无人机模型hector_quadrotor
- Red 配置hector_quadrotor无人机模型,使得其可以按照指定方向位置运动
- 可以按照指定的方向进行移动,然而,具体过程较为麻烦,每次启动时,首先开启一个:roscore,然后使用:odom_publisher发布消息(即运行编译好的文件),在进入hector文件夹下启动,这样无人机模型才能运动.
- 现存问题
- 无法直接编译 hector_quadrotor
- 无法将机器人模型剥离
- 移动处理较为麻烦
2017-01-09
解决hector_quadrotor包无法编译通过的问题
缺少包的情况:
![alt text](/home/zero/图片/2017-01-09 11:53:58屏幕截图.png “Title”)- 缺少的包安装:缺少的包直接安装即可,缺少什么包,直接补什么包即可
sudo apt-get install ros-jade-geographic-msgs
- 缺少的包安装:缺少的包直接安装即可,缺少什么包,直接补什么包即可
- 由于飞机的倒转,考虑使用,给定姿态四元数乘以初始四元数值,使其标正:
- 四元数乘法参考: >http://www.cnblogs.com/mengdd/p/3238223.html
- 处理后发现其朝向值大致为同一方向,然而XY轴有偏转
2017-01-10
飞机的方向信息和位置信息的纠正
- 昨天标正后的XY轴是不对齐的,偏差有90度,然而刚刚个修改后,未进行处理竟然一致啦(黑人问号脸)
- 首先进行的是方向矫正,校正后开始一致了
- 再次进行位置校正,位置信息和方向信息不一致
- 方向校正是,当前的四元数乘以初始四元数的逆
- 位置校正是获得的位置在以初始方向下的位置 <参考> http://openhome.cc/Gossip/ComputerGraphics/QuaternionsRotate.htm
- 方向校正效果类似,然而对于位置校正,其旋转和位移方向不同.
2017-01-11
飞机运行时物理坐标系和自身坐标系的关系的关系
- 物理坐标系和自身坐标系转换过程中的位置和方向关系
- 方向参照初始方向–txt1:位置不变,方向近似指向同一方向–text2:发生旋转,屏幕录像 2017-01-11 10:21:01.mp4
- 方向位移都参照起始位置–text1: 方向和位置大体吻合,方向一直不变–text2:发生旋转无区别
- 出现过一次 位置和方向一致,Z轴不变,在XY平面转动
2017-01-12
飞机的姿态纠正&深度学习人脸识别初探
- 飞机的姿态情况是,其一沿着X轴移动,其二绕X轴进行旋转,这是什么原因.
- 运行的opencv的人脸识别程序一直报错.
2017-01-13
姿态纠正
- 四元数的负数是全部取反是和正数一样的结果方位(负数是绕相同的轴相反的方向变换到相同的方位上,或者再旋转多360变换到相同方位上)
- 四元数角度不用限制,不同于欧拉角,但是插值时候需要注意,q和-q表示相同的方位,所以保证两个角度之间夹角(点积为正)
- v0到v1为正数,或者一直正数或者一直负数,反正是单调递增或者单调递减就可以了
2017-01-16/01-18
- 四元数代表的意义,是当前到世界还是世界到当前的旋转变换–确定了
- 希望获得是当前情况相对于初始情况下的平移和姿态变化.
2017-01-18-2017-01-20
- 将Matlab代码转换为C++ 模拟其中运行结果
- 实验结果和模拟情况一致—
2017-02-08 - - to be continue…
希望获得模拟情况与实验结果一致 保持其运动方向,给其一个初始的运动轨迹及方向
关于飞机的启动在:/home/zero/binbin/启动命令.txt 有相关的介绍指南
2017-04-05 - - continue…
- 1:深度学习,CNN,DNN–人脸识别
- 2:无人机建模,hector_gif 移置