- 博客(8)
- 收藏
- 关注
原创 基于Matlab的差速轮式小车非线性MPC轨迹重规划
模型预测控制是一种广泛应用于工业控制领域的高级控制策略,其根据系统的模型及当前状态预测未来系统的输出,并通过求解受限条件下的最优控制问题,获得一组系统的最优控制输入序列,随后,只选取最优控制序列中的第一组结果,将其应用于系统中。本文设计了一种基于差速轮式小车的MPC轨迹规划器,通过设置合理的评价函数,在满足约束条件下,生成符合AGV运动的轨迹并尽量减少轨迹与参考路径的偏差。其中,第一项为AGV预测位置与参考轨迹点的欧式距离,第二项为角速度,第三项为障碍物惩罚函数,为较小的正数,防止分母出现零的情况。
2025-03-01 12:26:28
1053
1
原创 Linux IIC 驱动解析
i2c_device_match函数为设备和驱动匹配函数,此函数内容为if (!return 1;return 1;= NULL;return 0;其中of_driver_math_device函数会比较IIC设备节点和驱动中的compatible属性是否相等,成功匹配后会运行probe函数,其他函数为其他匹配方法。
2024-09-19 21:35:19
1253
原创 VSCode使用code runner配置Anaconda环境
在编译器右下角选择两个不同版本的conda环境,如果环境没出来,需要等待一下,或者检查Anaconda是否加入了系统环境变量。选择不同编译器版本,输入ctrl+alt+n快捷键,或点击右上角小三角运行,发现编译器输出版本不同,成功。进入executor Map edit in setting.json。新建py文件,输入以下代码。
2024-09-19 19:35:07
840
1
原创 Linux SPI 解析
而异步方式则正好相反,数据传输的发起者无需等待传输的结束,数据传输期间还可以做其它事情,用代码来解释就是,调用传输的函数后,函数会立刻返回而不用等待数据传输完成,我们只需设置一个回调函数,传输完成后,该回调函数会被调用以通知发起者数据传送已经完成。在linux系统中,为了提高代码利用率,引入了设备驱动模型分层的概念,将代码分为驱动和设备,并利用总线对设备和驱动进行管理。最后,调用spi_bitbang_start函数,该函数会调用spi_register_master函数,注册spi_master。
2024-09-14 21:39:14
1161
原创 STM32维特智能JY60HAL库读取
感觉JY60是维特智能家出口的最拉的陀螺仪了,别的都支持115200波特率,甚至是IIC,就它是9600。其实也可以按照官方给的协议自己在串口中断里面接受陀螺仪数据,反正就是一个起始位加三个标志位,最后再来一个校验位,不过我很懒,直接移官方的啦。
2024-04-10 18:22:09
3181
8
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人