开源改变世界

PPR 设置 Blackpill F401 #71

推推 grbl 3年前 (2023-02-08) 274次浏览
打开
JoachimF 打开了这个问题 2022 年 5 月 9 日 · 16条评论
打开

PPR 设置 Blackpill F401#71

JoachimF 打开了这个问题 2022 年 5 月 9 日 · 16条评论

评论

PPR 设置 Blackpill F401 #71

您好,

我继续我的工作,从 blackpill 创建一个主板,我测试了这个目标上可用的所有功能。
当我启用 spindle_sync 时,一切正常,但是当我将 PPR 设置为 600 时,因为我的编码器是 600PPR,blackpill 无法启动。
Windows 设备管理器中没有可用的串行端口,我必须重新刷新 stm 才能使其再次工作。

我将索引和脉冲设置为引脚 B3 和 B4 以具有 2 个不同的计时器,我做错了吗?

PPR 设置 Blackpill F401 #71
贡献者

主轴脉冲输入必须作为时钟输入路由到此处的计时器。如果要使用 D2 以外的引脚,则必须相应地更改它,并且还必须更改定时器。有关可能的备选方案,请参见STM32F411 数据表中的表 9,备选功能映射。

PPR 设置 Blackpill F401 #71
作者
约阿希姆 评论了 2022 年 5 月 11 日  

遗憾的是,在 F401CC 上,端口 D 不可用且 TIM3_ETR 没有备用引脚。
是否可以交换 RPM_TIMER 和 RPM_COUNTER 以获得 PA0 或 PA5 或 PA15 上 TIM2_ETR 的脉冲?

driver.h
#define RPM_COUNTER_N 2
#define RPM_COUNTER 定时器(RPM_COUNTER_N)
#define RPM_COUNTER_IRQn timerINT(RPM_COUNTER_N)
#define RPM_COUNTER_IRQHandler timerHANDLER(RPM_COUNTER_N)
#define RPM_COUNTER_CLOCK_ENA timerCLKENA(RPM_COUNTER_N)

#define RPM_TIMER_N 3
#define RPM_TIMER 定时器(RPM_TIMER_N)
#define RPM_TIMER_IRQn timerINT(RPM_TIMER_N)
#define RPM_TIMER_IRQHandler timerHANDLER(RPM_TIMER_N)
#define RPM_TIMER_CLOCK_ENA timerCLKENA(RPM_TIMER_N)

driver.c
GPIO_Init.Mode = GPIO_MODE_AF_PP;
GPIO_Init.Pin = SPINDLE_PULSE_BIT;
GPIO_Init.Pull = GPIO_NOPULL;
GPIO_Init.Speed = GPIO_SPEED_FREQ_LOW;
GPIO_Init.Alternate = GPIO_AF1_TIM2 ;
HAL_GPIO_Init(SPINDLE_PULSE_PORT, &GPIO_Init);

这是对的吗 ?

PPR 设置 Blackpill F401 #71
作者
约阿希姆 评论了 2022 年 5 月 11 日  

亲爱的泰杰奥,

我知道为什么 stm 在启动时崩溃,我启用了 VFD 插件和 Spindle_sync,但是当启用 VFD 时,没有设置 hal.spindle.set_state!
在主轴同步初始化之后调用 grbl.on_spindle_select 之后设置指针。

#if VFD_SPINDLE != 1
….
#endif // SPINDLE_PWM_TIMER_N
hal.spindle.set_state = spindleSetState;
#endif // VFD_SPINDLE

此致,

约阿希姆

PPR 设置 Blackpill F401 #71
贡献者

是否可以交换 RPM_TIMER 和 RPM_COUNTER 以获得 PA0 或 PA5 或 PA15 上 TIM2_ETR 的脉冲?

应该是——你可以试试?

在主轴同步初始化之后调用 grbl.on_spindle_select 之后设置指针。

看起来您的驱动程序代码已过时 –最近更改了主轴处理,所以如果您更新可能没问题?

PPR 设置 Blackpill F401 #71
作者

是否可以交换 RPM_TIMER 和 RPM_COUNTER 以获得 PA0 或 PA5 或 PA15 上 TIM2_ETR 的脉冲?

应该是——你可以试试?

我会尝试一下,我会给你一个反馈,对于低引脚 MCU 来说,这将是一个不错的选择

在主轴同步初始化之后调用 grbl.on_spindle_select 之后设置指针。

看起来您的驱动程序代码已过时 –最近更改了主轴处理,所以如果您更新可能没问题?

真可惜,我调试了你已经完成的代码……时间不足是错误的

我可以在哪里向您发送小费以感谢您的出色工作?

PPR 设置 Blackpill F401 #71

美好的一天 terjeio,朋友我有一台 emco compact 5 CNC 车床和一台带 grblHAL 的 stm32f411,但我不知道如何配置编码器我找不到它的配置位置和输入引脚,我仍然很专心,谢谢

PPR 设置 Blackpill F401 #71
贡献者

@Juank23查看st_morpho_map.h文件,搜索 SPINDLE_SYNC_ENABLE 符号。您必须将这些定义添加到您正在使用的地图文件中。请注意,目前仅支持 D2 作为主轴编码器脉冲输入的输入。上面这条评论中的信息。

PPR 设置 Blackpill F401 #71

早上好,感谢您的及时回复,朋友,我将这些行添加到代码中,但是有一个问题,您必须对代码进行任何其他修改?? 在 iosender 中,当它处于车床模式时,在尝试使线程保持专注时会出现问题,非常感谢。

PPR 设置 Blackpill F401 #71
贡献者

… 但有一个问题 …

而问题是……?

首先,您必须确保正确处理主轴编码器输入。启用后,ioSender 中的 RPM 显示变为“实时”并显示从编码器读取的真实 RPM。可以?“实时”值是否与现实相符?

主轴同步运动需要索引脉冲,可以用$SD命令查看。这将输出逗号分隔值列表:当前索引脉冲计数、脉冲计数、错误计数和角度位置。错误计数是每转误读脉冲的计数(> 0,如果每转脉冲与 PPR 设置不匹配 – $38)。该$SR命令重置计数器和角度位置。

当正确读取编码器脉冲时,必须使用 $80 – $82 的设置来调整 PID 回路。为此,最好启用 PID 日志记录。这是在config.h 中找到的编译时选项。启用后,ioSender 中会显示一个新选项卡,其中以图形方式显示日志中的数据。要进行调整,请发出 G33 命令并在之后获取数据。然后调整 PID 参数并重复,直到获得良好的响应。这是 PID 调整的一个操作说明,更多内容可以通过搜索pid 调整找到。

PPR 设置 Blackpill F401 #71

buen dia terjeio, amigo descargue grblhall pero no encuentro la menara de conifurar, modifique las lineas de codigo que me digiste pero no funciona no aparece ninguna pestaña de pidtuning en iosender como hago para configurarlo estoy compilando en stm32cubeIDE continuacion te envio unas capturas espero me puedas ayudar muchas gracias
PPR 设置 Blackpill F401 #71
PPR 设置 Blackpill F401 #71
PPR 设置 Blackpill F401 #71
PPR 设置 Blackpill F401 #71
PPR 设置 Blackpill F401 #71

PPR 设置 Blackpill F401 #71
贡献者

美好的一天 terjeio,朋友下载 grblhall 但我找不到 conifurar 的 menara,修改你告诉我的代码行但它不起作用没有像我配置它那样在 iosender 中出现任何 pidtuning 选项卡我正在编译stm32cubeIDE 然后我发给你一些捕获希望你能帮助我非常感谢

如果我没看错这个翻译,你就没有设法使用 PID 日志进行编译。这是一个在config.h 中找到的编译时选项- 取消注释 PID_LOG 定义,重新编译和刷新,PID 选项卡应该会出现。

从上面的图片看,您似乎还没有在地图文件中添加/取消注释这一行?

PPR 设置 Blackpill F401 #71

感谢您的及时回复,我正在使用 blackpill_map.h 地图,我添加了您之前告诉我的行,但我注意到这里有错误
,我向您发送了我正在使用的地图的副本,谢谢
PPR 设置 Blackpill F401 #71
PPR 设置 Blackpill F401 #71
PPR 设置 Blackpill F401 #71
PPR 设置 Blackpill F401 #71
PPR 设置 Blackpill F401 #71
PPR 设置 Blackpill F401 #71

PPR 设置 Blackpill F401 #71
贡献者

411 Blackpill 没有引出 PD2 引脚,因此需要进行更多代码更改才能使用其中一种替代方案。PA15 目前未被使用,因此它似乎是最佳候选者。

PPR 设置 Blackpill F401 #71

美好的一天 terjeio,我告诉你已经出现了 pid 调整选项卡,我已经更换了转塔电机并且我已经改装了步进电机以便自动更换工具,转塔中有 6 个工具,我还添加了一些限位开关,但我不知道如何创建宏来使工具从 gcode 更改,我用一些小宏做了一些测试,并将它们添加到 gcode 中以查看它是如何工作的并且它工作正常但它应该是自动,从 gcode 我看到 t1,t2,iosender 暂停以进行工具更改,但由于我没有制作适当的宏,因此无法使用视频查看项目感谢您的帮助问候
https://www. youtube.com/watch?v=5Jw0SQXnH1w

PPR 设置 Blackpill F401 #71
贡献者

我刚刚上传了用于交换定时器的代码更改,因此使用一些端口 A 引脚进行主轴脉冲输入。仅使用模拟器进行了测试,将 RPM 计时器的中断驱动扩展到 32 位以产生无效值的风险很小。需要在真机中进行测试以验证此更改。blackpill 地图已更新为使用此选项。

@Juank23如果没有关于如何控制炮塔的详细信息,我无能为力。请打开另一个问题,因为它与此无关。

PPR 设置 Blackpill F401 #71

早上好 terjeio,我做了一些小测试
,由于连接不好,我烧掉了卡,我很难过,但我已经订购了 2 张卡,我正在等待他们到达继续这个项目,非常感谢你帮助,最好的问候

免费注册 在 GitHub 上加入此对话。已有帐户? 登录评论
标签
还没有
项目

还没有

发展

没有分支机构或拉取请求

3人参加
PPR 设置 Blackpill F401 #71PPR 设置 Blackpill F401 #71PPR 设置 Blackpill F401 #71

喜欢 (0)