标题:
STM32步进电机4轴加减算法分享
[打印本页]
作者:
wzchenzhe
时间:
2020-1-12 10:00
标题:
STM32步进电机4轴加减算法分享
s32 steps[4]={150000, 150000, 150000, 150000};//运动距离
u32 accel[4]={10000,10000, 10000, 10000};//加速度
u32 decel[4]={10000, 10000, 10000, 10000};//减速度
u32 speed[4]={10000, 10000, 10000, 10000};//速度
s32 stpdecel[4]={65000, 65000, 65000, 65000};//急停减速度
u8 addr485=0;
u8 LmtSnsPos[4]={1,1,1,1};//正限位电平
u8 LmtSnsNeg[4]={1,1,1,1};//负限位电平
u8 HomeSns[4]={1,1,1,1};//回零电平
s32 position[4]={0,0,0,0};//当前位置
s32 HomePos[4]={0,0,0,0};//
s32 SoftLmtPos[4]={0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff};
s32 SoftLmtNeg[4]={0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff};
u16 AxisPulsePin[4]={AXIS_PULSE_1, AXIS_PULSE_2, AXIS_PULSE_3, AXIS_PULSE_4};
u16 AxisDirPin[4]={AXIS_DIR_1, AXIS_DIR_2, AXIS_DIR_3, AXIS_DIR_4};
u16 LmtPosPin[4]={AXIS_LMTPOS_1, AXIS_LMTPOS_2, AXIS_LMTPOS_3, AXIS_LMTPOS_4};
u16 LmtNegPin[4]={AXIS_LMTNEG_1, AXIS_LMTNEG_2, AXIS_LMTNEG_3, AXIS_LMTNEG_4};
u16 HomePin[4]={AXIS_HOME_1, AXIS_HOME_2, AXIS_HOME_3, AXIS_HOME_4};
u16 AddrPin[4]={GPIO_Pin_7, GPIO_Pin_6, GPIO_Pin_15, GPIO_Pin_14};
GPIO_TypeDef *AxisLmtPosPort[4]={GPIOE, GPIOE, GPIOE, GPIOE};
GPIO_TypeDef *AxisLmtNegPort[4]={GPIOE, GPIOE, GPIOE, GPIOE};
GPIO_TypeDef *AxisPulsePort[4]={GPIOE, GPIOE, GPIOE, GPIOE};
GPIO_TypeDef *AxisDirPort[4]={GPIOE, GPIOE, GPIOE, GPIOE};
GPIO_TypeDef *HomePort[4]={GPIOC, GPIOC, GPIOC, GPIOC};
GPIO_TypeDef *AddrPort[4]={GPIOC, GPIOC, GPIOB, GPIOB};
uint32_t AxisEXTILine[4]={EXTI_Line0, EXTI_Line1, EXTI_Line2, EXTI_Line3};
uint8_t AxisEXTIPinSource[4]={GPIO_PinSource0, GPIO_PinSource1, GPIO_PinSource2, GPIO_PinSource3};
bool bLmtPos[4]={FALSE, FALSE, FALSE, FALSE};
bool bLmtNeg[4]={FALSE, FALSE, FALSE, FALSE};
bool bStopCmd[4]={FALSE, FALSE, FALSE, FALSE};
bool bEmgStopping[4]={FALSE, FALSE, FALSE, FALSE}; //是否碰限位急停
bool bEnableSoftLmt[4]={FALSE, FALSE, FALSE, FALSE};
bool bHomeOK[4]={FALSE, FALSE, FALSE, FALSE};
bool bZeroCapture[4]={FALSE, FALSE, FALSE, FALSE};
s32 ZeroDir[4]={POSITIVE, POSITIVE, POSITIVE, POSITIVE}; //回零方向
s32 ZeroOffset[4]={1000, 1000, 1000, 1000}; //零点偏移
u32 ZeroBackDistance[4]={6400, 6400, 6400, 6400}; //回零回退距离
u8 ZeroStep[4]={0, 0, 0, 0};
u32 HomeFastSpeed[4]={10000, 10000, 10000, 10000};//回零快搜速度
u32 HomeSlowSpeed[4]={2000, 2000, 2000, 2000};//回零慢搜速度
全部资料51hei下载地址:
STM32F103加减速.7z
(163.31 KB, 下载次数: 64)
2020-1-12 13:46 上传
点击文件名下载附件
下载积分: 黑币 -5
作者:
xuezc
时间:
2020-2-10 12:36
谢谢分享!!!
作者:
ywjianghu
时间:
2020-2-10 14:38
楼主,下载前问一声,是您原创的吗?有详细的文档吗?
作者:
xuezc
时间:
2020-5-9 23:04
感谢分享,学习中
作者:
xuezc
时间:
2020-5-9 23:05
谢谢分享!进来学习
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1