<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[ble123456789的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/ble123456789</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; ble123456789]]></copyright><item><title><![CDATA[C++中 “类做友元”]]></title><link>https://blog.youkuaiyun.com/ble123456789/article/details/142779624</link><guid>https://blog.youkuaiyun.com/ble123456789/article/details/142779624</guid><author>ble123456789</author><pubDate>Wed, 09 Oct 2024 10:23:01 +0800</pubDate><description><![CDATA[在类里创建了成员变量（成员属性）后，要用成员函数来对其进行操行。其中，要用构造函数对成员属性进行初始化操作，如上goodGay()和Building()。由于goodGay()类的成员变量是地址，所以自然是对地址类型的变量进行初始化操作 (与Building()构造函数稍有区别)。]]></description><category></category></item><item><title><![CDATA[linux终端连接github中的ssh密钥来下载git库资源]]></title><link>https://blog.youkuaiyun.com/ble123456789/article/details/142493346</link><guid>https://blog.youkuaiyun.com/ble123456789/article/details/142493346</guid><author>ble123456789</author><pubDate>Tue, 24 Sep 2024 16:29:13 +0800</pubDate><description><![CDATA[后来通过指令 git clone --branch latest_stable git@github.com:rdiankov/openrave.git来下载，速度变很快，而二者区别一目了然。之前通过指令  git clone --branch latest_stable https://github.com/rdiankov/openrave.git。3.比如我想下载openrave这个库。]]></description><category></category></item><item><title><![CDATA[ROS2 humble 中安装moveit2]]></title><link>https://blog.youkuaiyun.com/ble123456789/article/details/142096061</link><guid>https://blog.youkuaiyun.com/ble123456789/article/details/142096061</guid><author>ble123456789</author><pubDate>Tue, 10 Sep 2024 13:05:01 +0800</pubDate><description><![CDATA[看https://www.bilibili.com/video/BV1UZ421m7XQ/?spm_id_from=333.788.recommend_more_video.0&vd_source=09737d34f538f1c362e33fbc6fce9b1b的评论区，用https://moveit.picknik.ai/humble/doc/tutorials/quickstart_in_rviz/quickstart_in_rviz_tutorial.html。和鱼香ROS网站结合起来去安装。]]></description><category></category></item><item><title><![CDATA[台大机器人学 — 学习记录]]></title><link>https://blog.youkuaiyun.com/ble123456789/article/details/137841822</link><guid>https://blog.youkuaiyun.com/ble123456789/article/details/137841822</guid><author>ble123456789</author><pubDate>Tue, 16 Apr 2024 22:19:42 +0800</pubDate><description><![CDATA[2. euler angles 也有 12 种旋转方式，但 fixed angles 的正转和 euler angles 的反转实际是一样的，所以各自的 12 种旋转方式相互对应。第一次旋转有 x、y、z 三种，第二次旋转要扣除第一次旋转方式故第二次有 2 种旋转方式，第三次要扣除第二次旋转方式所以也有 2 种旋转方式；1. fixed angles 有 12 种旋转方式（旋转方式的意思是绕谁旋转多少度）：3×2×2。绕固定坐标系，绕X轴转α → 绕Y轴转β → 绕Z轴转γ （fixd angles）]]></description><category></category></item><item><title><![CDATA[模块 、面向对象编程]]></title><link>https://blog.youkuaiyun.com/ble123456789/article/details/137644673</link><guid>https://blog.youkuaiyun.com/ble123456789/article/details/137644673</guid><author>ble123456789</author><pubDate>Fri, 12 Apr 2024 11:47:21 +0800</pubDate><description><![CDATA[_init__方法的第一个参数永远是self，表示创建的实例本身，因此，在__init__方法内部，就可以把各种属性绑定到self，因为self就指向创建的实例本身。在if __ name__ ==’__ main__’:下面的代码只有在（文件作为脚本直接执行）才会被执行，而import到其他脚本中是不会被执行的.class是抽象的模板，Instance是根据class创建出来的一个个具体的’对象’，每个对象都拥有相同的方法，但各自的数据可能不同。函数名为nop，括号，括号里加参数，冒号。]]></description><category></category></item><item><title><![CDATA[python数据类型]]></title><link>https://blog.youkuaiyun.com/ble123456789/article/details/137642288</link><guid>https://blog.youkuaiyun.com/ble123456789/article/details/137642288</guid><author>ble123456789</author><pubDate>Thu, 11 Apr 2024 16:37:00 +0800</pubDate><description><![CDATA[for i in range()，range()是个函数，如range(5)是1、2、3、4。且range()的类型就是range，不是list也不是turple，可以把它转为list。（2） while循环，只要条件满足，就不断循环，条件不满足时退出循环。in后面可以是list、turple、字符串（他仨都是可迭代对象）。break是直接不干了，continue是跳过本次后续的循环还继续。range()最多三个参数，如range（0，30，5）names是循环前的变量，name是个新的变量。]]></description><category></category></item><item><title><![CDATA[手眼标定（本文并不是手眼标定的过程，而是它要求得什么东西）]]></title><link>https://blog.youkuaiyun.com/ble123456789/article/details/137261596</link><guid>https://blog.youkuaiyun.com/ble123456789/article/details/137261596</guid><author>ble123456789</author><pubDate>Tue, 02 Apr 2024 14:50:02 +0800</pubDate><description><![CDATA[只要点P的个数大于我们求解的转换矩阵维度，同时这些点线性不相关，我们便可以通过伪逆矩阵计算。假设空中固定点P在 机械臂基坐标系 和 相机坐标系 的坐标分别是。，进而确定 机器人坐标系 和 相机坐标系 之间的与转换矩阵。问题的关键：找到相机坐标系和机械臂基坐标系之间的转换关系。:机械臂末端坐标系⮕机械臂基坐标系 的转换矩阵。:相机坐标系⮕机械臂基坐标系 的转换矩阵。:标定板坐标系⮕机械臂末端坐标系 的转换矩阵。，相机坐标系到机械臂基坐标系的转换关系为。:相机坐标系⮕标定板坐标系 的转换矩阵。]]></description><category></category></item><item><title><![CDATA[指定地址写]]></title><link>https://blog.youkuaiyun.com/ble123456789/article/details/134908288</link><guid>https://blog.youkuaiyun.com/ble123456789/article/details/134908288</guid><author>ble123456789</author><pubDate>Mon, 18 Dec 2023 16:50:40 +0800</pubDate><description><![CDATA[而与此同时，根据协议规定，从机要在这里拉低SDA，如绿色所示。从机应答的时候，从机立刻拽住SDA，应答结束后从机放开SDA。综合主机从机的波形，结合线与特性，主机释放SDA后，SDA被从机拽住了，这个过程就代表从机产生了应答。2.主机给从机写数据，SCL高电平期间拉低SDA，产生起始条件（START即S）这个时刻主机应该释放SDA，单看主机的波形，应该如红线所示，SDA回弹到高电平；在停止条件之前，先拉低SDA，为后续停止条件中SDA的上升沿做准备，（起始条件后紧跟着的时序必须是发送一个字节的时序，]]></description><category></category></item><item><title><![CDATA[I2C的6个时序]]></title><link>https://blog.youkuaiyun.com/ble123456789/article/details/134738016</link><guid>https://blog.youkuaiyun.com/ble123456789/article/details/134738016</guid><author>ble123456789</author><pubDate>Sun, 10 Dec 2023 14:16:12 +0800</pubDate><description><![CDATA[主机和从机的输出，如果设置为推挽输出模式，输出高电平时为强上拉，输出低电平时强下拉。但如果没有配置好主机和从机的发送时序，二者同时发送，一个发送高电平一个发送低电平会造成短路。（开漏模式下输出高电平就相当于断开引脚，所以在输入之前可以直接输出高电平，不需要再切换成输出模式。但是为了兼容重复起始条件sr，sr最开始的SCL是低电平，SDA电平不敢确定，为保险起见，趁SCL低电平时拉高SDA（否则SCL高电平期间读数据，读到的SDA有可能是0）如果SCL和SDA都是低电平，先释放SCL再释放SDA就行。]]></description><category></category></item><item><title><![CDATA[【无标题】]]></title><link>https://blog.youkuaiyun.com/ble123456789/article/details/134119552</link><guid>https://blog.youkuaiyun.com/ble123456789/article/details/134119552</guid><author>ble123456789</author><pubDate>Mon, 30 Oct 2023 16:19:00 +0800</pubDate><description><![CDATA[注意：如果使用hal库，步骤2~5使用HAL_GPIO_Init一步到位。EXTI管理外部中断或者事件。]]></description><category></category></item><item><title><![CDATA[【无标题】]]></title><link>https://blog.youkuaiyun.com/ble123456789/article/details/134117138</link><guid>https://blog.youkuaiyun.com/ble123456789/article/details/134117138</guid><author>ble123456789</author><pubDate>Mon, 30 Oct 2023 13:30:24 +0800</pubDate><description><![CDATA[输出模式上下拉无效，输入模式上下拉有效（与按键所接有关）。按键扫描需要返回一个值，返回一个值才能知道是否按下。]]></description><category></category></item><item><title><![CDATA[【无标题】]]></title><link>https://blog.youkuaiyun.com/ble123456789/article/details/134116497</link><guid>https://blog.youkuaiyun.com/ble123456789/article/details/134116497</guid><author>ble123456789</author><pubDate>Mon, 30 Oct 2023 12:20:52 +0800</pubDate><description><![CDATA[对于具体的硬件平台，与硬件相关的代码都被封装在BSP中，由BSP向上提供虚拟的硬件平台，BSP与操作系统通过定义好的接口进行交互。BSP是所有与硬件相关的代码体的集合。文件夹BSP的意思。]]></description><category></category></item><item><title><![CDATA[【无标题】]]></title><link>https://blog.youkuaiyun.com/ble123456789/article/details/134116420</link><guid>https://blog.youkuaiyun.com/ble123456789/article/details/134116420</guid><author>ble123456789</author><pubDate>Mon, 30 Oct 2023 12:17:13 +0800</pubDate><description><![CDATA[解决：正点原子文件中都是#include “./SYSTEM/sys/sys.h”，然后把文件中的./SYSTEM/sys/都删掉，只留下#include “sys.h”。当然，这个只解决了sys和delay俩文件的问题，至于usart我先把它删掉了，等用到的时候再去研究。直接将system移入到工程中一直报错：找不到sys.h路径。在STM32F103C8T6上进行移植。]]></description><category></category></item></channel></rss>