仅仅我可见
基于simulink模型对硬件进行开发MDB开发方式,其中主要包括stm32、esp32的开发,包含foc电机开发、pwm波生成以及pwm检测、串口通讯、adc通讯等,包含完整的过程VIP文章
鼾声鼾语
汽车行业研发,人工智能领域及汽车电气自动化工程师
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
使用强化学习开发一个智能机械臂遇到的问题总结(推荐)
因为训练franka机械臂默认的奖励函数就可以,而修改为piper机械臂就不行,肯定是参数问题,最后发现是训练不到位,然后修改了agent中的rsl_rl_ppo_cfy.py中的num_step_pre_env由24修改为48,修改了训练迭代次数位20000,修改了save_interval为200,训练后就可以了。2,问题2,训练完毕后夹抓抓取物体然后就丢掉,然后再抓起来,这种现象通过deepseek,发现可能是训练不到位,如果训练时间短,策略只学到“先闭合”就有奖励,后续不关心物体状态。原创 2025-07-09 18:23:06 · 239 阅读 · 0 评论 -
NVIDIA Isaac GR00T N1部署以及程序教程
1,NVIDIA Isaac GR00T N1 入门教程(一) 人形机器人多模态大语言模型。2.NVIDIA Isaac GR00T N1 人形机器人强化学习入门教程(二)详细步骤。原创 2025-03-27 17:11:26 · 539 阅读 · 0 评论 -
轨迹控制--odrive的位置控制---负载设置
ODrive入门指南】ODrive Robotics 基于STM32的无刷直流电机控制器 软件(源代码)与硬件(含原理图与PCB工程文件) FOC 电机驱动斯坦福大学:https://blog.csdn.net/cqtianxingkeji/article/details/136560116。设置为 0 即忽略此项影响,但是如果将此项调整到合适的值可以改善系统的响应速度,请注意:此项和系统负载相关。使用轨迹控制模式可以使您更灵活地调整反馈增益,以消除干扰,同时保持平稳的运动。原创 2025-02-26 22:10:26 · 441 阅读 · 0 评论 -
两个方法解决simulink链接设备xcp无法调试的问题
2,将波特率提高,默认是115200,修改为921600。1,较少观测的log数据。原创 2025-02-23 20:33:55 · 611 阅读 · 0 评论 -
差分轮算法-两个轮子计算速度的方法-阿克曼四轮小车计算方法
转向角度计算方法:float turning_angle = z_angular / x_linear;// 转向角度,单位为弧度。其中x_linear和z_angular是由del_cmd话题发出来的twist数据。速度的话直接用线速度。原创 2025-01-22 08:44:13 · 900 阅读 · 0 评论 -
多个坐标系(QCPAxisRect)在同一个QcustomPlot::Plotlayout中垂直布局的情况下,当坐标轴范围收缩调整的时候使得多条Y轴总能对齐的方法.
关于QcustomPlot 的概念就不多赘述了。这篇摘记主要记录我处理多个坐标系(QCPAxisRect)在同一个QcustomPlot::Plotlayout中垂直布局的情况下,当坐标轴范围收缩调整的时候使得多条Y轴总能对齐的方。原创 2024-12-13 09:10:49 · 449 阅读 · 0 评论 -
simulink 回放can数据,离线仿真,用来验证算法,应该怎么回读mat格式文件(重要)
simulink回放的模块是can log或者can replay,可以加载mat格式文件,然后再加一个can unpakage模块就可以了。asc格式文件一般可以用cananylzer采集,或者busmaster采集到的log转换为asc文件即可。用cannalyzer吧asc格式转换为mat格式,然后用simulink回放工具回放的。原创 2024-08-22 10:31:38 · 590 阅读 · 0 评论 -
自动驾驶的控制算法--mpc\pp\stanley\lqr\pid等
这些算法各有特点,适应不同的应用场景。这些控制算法的MATLAB实现为自动驾驶研究提供了一个宝贵的工具箱,有助于开发者理解和比较不同控制策略的性能,以及进行实际的车辆控制系统设计。通过学习和调试这些源代码,我们可以深入理解控制理论在自动驾驶领域的应用,并有可能改进现有的算法,提升自动驾驶系统的精度和鲁棒性。:模型预测控制是一种先进的控制策略,它基于有限时间内的系统动态模型进行优化,预测未来的系统行为。文件中可能包含了PID控制器的代码,用于调整车辆的速度和方向,以减少与目标轨迹的偏差。原创 2024-08-15 10:27:41 · 872 阅读 · 0 评论 -
线性数据离散化模块zero-order hold和quantize的区别
离散化模块zero-order hold和quantize的区别。zero-order hold:时间横向离散化。quantize:纵向离散化。原创 2024-08-12 14:25:57 · 504 阅读 · 0 评论 -
simulink种deadzone死区模块的理解和使用,使用simulink开发pid的时候经常添加deadzone(重要)
使用simulink开发pid的时候经常添加deadzone,这样不就把error差值限制在deadzone的上下限范围内了吗?,就不是真实的系统输入的差值error了吗?搭建两个仿真看下,尤其是当幅值设置为5的时候最明显能看出来效果,确实是好用的,其实本质是整个数据同步减去了deadzone设置的上下限值。Dead Zone模块产生指定范围(称为截止区)内的零输出。使用deadzone是为了保证连续性,使用在误差值里面的话不影响。3、输入小于等于下限值,输出下限值。2、输入大于上限值,输出上限值。原创 2024-08-12 14:21:59 · 2148 阅读 · 0 评论 -
完整的电信计费系统
详细设计 说明书加新的普通管理员,同时为他分配一些权限,可以修改普通管理员的信息,可以查询所 有的管理员信息,可以删除某些管理员。 账单查询系统: 具有帐单查询权限的管理员可以利用此子系统对所有用户的月账单进行查询。此子系 统不仅提供对某个帐务帐号上产生的总的费用进行查询,还提供对某个帐务帐号上的每个 业务帐号上产生的费用明细进行查询。具体操作如下: 1.月账单查询 具有账单查询角色的管理员进入本系统,登录成功后,可以执行如下查询操作: 根据输入的月份查询所有用户这个月的费用信息(提供分页显示)。原创 2020-10-08 08:44:26 · 2461 阅读 · 1 评论 -
JAVAWEB基于SSH2学生信息管理系统源码
程序测试软件: MyEclipse 数据库: mysql(可以转换sqlserver,oracle)系统采用SSH2框架设计,实现了学生信息,教师信息和课程信息的添加,修改,删除和查询操作学生信息: 学号,姓名,性别,年龄,生日,学生照片,系别,专业,年级。教师信息:职工号,姓名,性别,年龄,出生日期,教师照片,系别。课程信息: 课程编号,课程名,开课学期,课程学时,上课老师,课程介绍。...原创 2020-10-08 08:17:16 · 650 阅读 · 0 评论 -
Service实现后台动态更新数据到UI
具体请看代码:注释掉的就是没有用到的代码,业务逻辑可以按照文字注释去编辑package main.com.pwj.testmvpv1;import android.app.AlarmManager;import android.app.IntentService;import android.app.PendingIntent;import android.content.Intent;import android.content.Context;import android.os.Bind原创 2020-11-10 09:51:05 · 260 阅读 · 0 评论 -
协议解析库,数据传输直接进行反序列化或者叫解包,很好用
1,protobuf//跨平台的库2,darkcode//java的库,试了下android用不了,不知道为什么3,hprose4,jprotobuf //java的库,待测原创 2021-02-04 10:18:21 · 231 阅读 · 0 评论 -
cbt蓝牙数据传输的流程注意事项
1,蓝牙盒子的配置过程一定要完整,包括波特率配置以及通道配置连接2,在回调函数中不需要进行while(true)循环进行,回调函数是一个异步线程,直接是循环调用的。原创 2021-02-03 14:39:20 · 290 阅读 · 0 评论 -
pin和port的区别
pin翻译为引脚,port翻译为端口。看英文文献有点不懂两者区别,很容易混淆。尤其是在集成电路硬件中有何区别?当然也可以说说软件中有何不同?pin 是单个的. 如一个IC有32pin,那么就是32个引脚.port并非单个引脚. 如: USB port,那是4或5个引脚. 再来8bit的单片机,port A那是有8个引脚.这样举例,是否更清楚明了了呢?是否可以认为多个pin构成portKO以吧...原创 2021-03-10 14:08:16 · 11969 阅读 · 1 评论 -
一个自适应滤波算法,并且可以看到带有噪声的信号和经过自适应滤波后的信号的图像。
这个算法使用了LMS(最小均方)算法原理,通过不断调整滤波器系数以使误差最小化。该算法的参数signal是待处理的信号,filter_coeff是滤波器系数,error_threshold是误差阈值。原创 2023-02-08 11:09:20 · 250 阅读 · 0 评论 -
synchronized锁定的到底是什么?wait到底是什么?notify到底是什么?多线程处理的三元素。
synchronized介绍:synchronized是Java中的关键字,是一种同步锁。它修饰的对象有以下几种:修饰一个代码块,被修饰的代码块称为同步语句块,其作用的范围是大括号{}括起来的代码,作用的对象是调用这个代码块的对象;修饰一个方法,被修饰的方法称为同步方法,其作用的范围是整个方法,作用的对象是调用这个方法的对象;修改一个静态的方法,其作用的范围是整个静态方法,作用的对象是这个类的所有对象;修改一个类,其作用的范围是synchronized后面括号括起来的部分,作用主的对象是这个类的原创 2021-02-22 17:00:25 · 237 阅读 · 0 评论 -
c语言unsigned char相当于byte,那么如何使用呢,我们进行移位
1,首先我们用的IDE是codeblock,2,注意printf中打印整型,%d表示的是有符号的整型,%u表示的才是无符号的整型,3,在java和c#中有byte这个数据类型,但是在c中是没有的,我们一般用unsigned char来替换,byte,而且实际是可以的。下边我们测试一下移位操作的真正的含义,测试1:unsigned int getkey(unsigned char*seedData){unsigned int seedX;seedX=(seedData[0] << 3原创 2020-12-18 14:36:15 · 2071 阅读 · 0 评论 -
树莓派can接消息按照教程接,终于好了
1,严格按照教程2,先试一下回环模式看可否收到数据,可以的话,进行下一步3,配120欧电阻,重启,重启后不要用回环模式,直接进入正式模式,pc软件到位波特率和树莓派设置的波特率保持一致,多试几次,多重启几次,对好接口和波特率,(https://img-blog.csdnimg.cn/de52062ea3124496a012edf33c278ba0.png)...原创 2022-08-28 22:15:15 · 535 阅读 · 0 评论 -
每次在boot下建立ssh空文件就会被删掉,wpa_supplicant.conf 文件也会自动被删除,为什么?
A.开启ssh 和 配置WiFi注意2:我知道你可能没有路由器,你也可以用电脑开启WiFi热点,然后在热点管理那里找到你树莓派的IP地址如果你没有给树莓派现在就连接屏幕的想法,第一次启动OS前需要先新建两个文件来配置WiFi连接和开启ssh。如果没有配置键盘和屏幕,那第一次启动OS前需要先新建两个文件来配置wifi连接和开启ssh。1.开启ssh在刚才烧录完成的 MircoSD 中 boot 分区的根目录下,新建一个空白文件,并重命名为ssh,全部小写且无扩展名。注释:新建这个空白文件就是新建一原创 2022-04-20 14:33:22 · 5938 阅读 · 6 评论 -
java在堆和栈中保存了哪些数据
public static void mian(String args[]){ A a=new A(); }2.调用main方法到栈内存3.在栈内存中为a变量(A对象的引用)开辟空间4.在堆内存为A对象申请空间5原创 2021-07-21 08:45:02 · 3958 阅读 · 0 评论
分享