5 changed files with 91 additions and 7 deletions
@ -1 +1 @@ |
|||
Subproject commit 8cf48f33ade97f6e95c654429722b06f6818ccc3 |
|||
Subproject commit 9de9f8940b0013d7a97db35e0acad9a4e072015a |
@ -0,0 +1,78 @@ |
|||
1. 不同的电机,不同的负载,不同的速度,需要配置不同的参数 |
|||
-----> |
|||
2. 电机存在一个参数列表 |
|||
1. 归零时,清零编码器 |
|||
2. |
|||
------------------------------------------------------------------------------- |
|||
|
|||
|
|||
电机驱动 |
|||
1. 初始化电机参数,对电机参数进行优化。 |
|||
2. 电机单圈精度配置,需要在电机驱动程序中完成。 |
|||
3. 参数配置是一个指令集合(list)。 |
|||
4. 驱动器的参数可以根据项目写死。 |
|||
|
|||
驱动器配置完成后的目标: |
|||
1. 一圈的脉冲数和应用对齐。例如单位是mm,或者单位是0.01度 |
|||
2. 编码器对于上层来说是透明的,如果驱动器使用了编码器,则上报编码器的真实位置。 |
|||
3. 底层自己检查丢步事件。当丢步事件发生时,上报丢步事件。(丢步事件的检查 允许误差,由底层调整) |
|||
4. 上层不需要对电机进行任何配置,直接使用。(特殊情况下,如果不方便更新代码,可允许临时覆盖部分参数) |
|||
5. 归零只需要上层下发一条指令。 |
|||
6. 归零存在归零超时这个参数,由底层自己配置 |
|||
|
|||
单片机层需要设置好: |
|||
1. 默认速度(快速,慢速,中速) |
|||
2. 上层可修改速度等级(例如快速,慢速,中速) |
|||
3. 每种速度等级可能需要微调部分参数。 |
|||
加速度,减速度........ |
|||
每种速度使用一样的参数 |
|||
|
|||
4. |
|||
|
|||
上位机需要支持脚本加载。 |
|||
|
|||
|
|||
|
|||
cmdType, regadd regval speedlevel |
|||
local_reg 0/default |
|||
subdevice_reg |
|||
|
|||
|
|||
------------------------------------------------------------------------ |
|||
去现场版本: |
|||
1. 上位机&驱动 |
|||
2. |
|||
|
|||
不去现场版本: |
|||
1. 读取编码器真实位置() |
|||
1. 读取编码器处理过后的位置() |
|||
2. 清零,清零编码器 |
|||
3. 经过设置的编码器数值(配置好转换因子) |
|||
|
|||
|
|||
1. 参数配置同以前保持一致 |
|||
2. 增加一个set_cover_reg的指令 |
|||
3. readpos读取的位置是编码器的位置(如果有编码器) |
|||
4. 底层检查位置是否有偏差,如果出现偏差则报错。 |
|||
5. 上层可以读取偏差数值。 |
|||
6. 上层可以设置编码器偏差数值。 |
|||
7. 添加终点光电检测,这个检查需要上层自己检查。(上层应该抽象出两个指令,开门,关门,附带检查的自定义指令) |
|||
8. 归零时,清零编码器,清零驱动器位置。 |
|||
9. 上层可以读到编码器的数值 |
|||
|
|||
|
|||
|
|||
------------------------------------------------------------------------ |
|||
|
|||
|
|||
|
|||
setspeedlevel |
|||
覆盖部分配置 |
|||
|
|||
设置部分参数() |
|||
|
|||
move_to_zero |
|||
归零 |
|||
|
|||
|
|||
|
Write
Preview
Loading…
Cancel
Save
Reference in new issue