本人的想法是: 用NUCLEO-L073RZ去移植 开源的Grbl CNC内马达控制部分进行实验: 1。验证马达运行效果。 2。验证自己程序与开源的Grbl 程序运行效果。 3。NUCLEO-L073RZ功能够强,加入一个创意性的控制来做上面两种实验。 这一个基础性的实验,主要是提高写程序技巧和发挥一点创意。 |
【Nucleo板开发日志】+Nucleo(STM32L053)基于keil5和CubeMX的评测
【STM32L0方案秀】蓝牙心率测量仪
【STM32L0方案秀】-电机转速测量仪
【STM32L0方案秀】stm32+wifi+app+摄像头=修剪机器人
【STM32L0方案秀】stm32l073低功耗例程实现和扩展调整
【我要show】+STM32L073+祝愿ST的越来越好
【我要show】STM32L073+'感兴趣的'部分
【STM32L0方案秀】--设计无线遥控行走车体,同时具备云台...
【STM32L0方案秀】STM32L073 方案实现计划
【STM32L0方案秀】团购开发板,分享方案赢开发经费!
摘自 GRBL0.9J 程序内注释。
如果需要源代码可以到github.com中下载,里面有很详细的说明。
/* BLOCK VELOCITY PROFILE DEFINITION
__________________________
/| |\ _________________ ^
/ | | \ /| |\ |
/ | | \ / | | \ s
/ | | | | | \ p
/ | | | | | \ e
+-----+------------------------+---+--+---------------+----+ e
| BLOCK 1 ^ BLOCK 2 | d
|
time -----> EXAMPLE: Block 2 entry speed is at max junction velocity
The planner block buffer is planned assuming constant acceleration velocity profiles and are
continuously joined at block junctions as shown above. However, the planner only actively computes
the block entry speeds for an optimal velocity plan, but does not compute the block internal
velocity profiles. These velocity profiles are computed ad-hoc as they are executed by the
stepper algorithm and consists of only 7 possible types of profiles: cruise-only, cruise-
deceleration, acceleration-cruise, acceleration-only, deceleration-only, full-trapezoid, and
triangle(no cruise).
maximum_speed (< nominal_speed) -> +
+--------+ <- maximum_speed (= nominal_speed) /|\
/ \ / | \
current_speed -> + \ / | + <- exit_speed
| + <- exit_speed / | |
+-------------+ current_speed -> +----+--+
time --> ^ ^ ^ ^
| | | |
decelerate_after(in mm) decelerate_after(in mm)
^ ^ ^ ^
| | | |
accelerate_until(in mm) accelerate_until(in mm)
The step segment buffer computes the executing block velocity profile and tracks the critical
parameters for the stepper algorithm to accurately trace the profile. These critical parameters
are shown and defined in the above illustration.
*/