难道不是基于ARM芯片S3C4510的步进电机加减速控制利用485协议和Modbus协议实现了精确控

  • 学术交流
  • 2025年01月26日
  • 随着工业的进步,嵌入式技术得到了广泛的应用和成熟。ARM嵌入式处理器作为一种高性能、低功耗的RISC芯片,支持多种操作系统、主频高、运算处理能力强,并可兼容8/16位器件,还能带海量低价的SDRAM数据存储器。它在控制领域显示出了巨大的潜力和价值。尤其是在运动控制领域,它利用以ARM为内核的嵌入式微处理器进行开发,有着广阔的发展空间。 在一些要求成本效益较高的情况下,步进电机是常见的一种执行元件

难道不是基于ARM芯片S3C4510的步进电机加减速控制利用485协议和Modbus协议实现了精确控

随着工业的进步,嵌入式技术得到了广泛的应用和成熟。ARM嵌入式处理器作为一种高性能、低功耗的RISC芯片,支持多种操作系统、主频高、运算处理能力强,并可兼容8/16位器件,还能带海量低价的SDRAM数据存储器。它在控制领域显示出了巨大的潜力和价值。尤其是在运动控制领域,它利用以ARM为内核的嵌入式微处理器进行开发,有着广阔的发展空间。

在一些要求成本效益较高的情况下,步进电机是常见的一种执行元件。在这种应用中,步进电机能够开环方式控制,而无需反馈就能对位置和速度进行精确控制。但由于没有负载位置反馈,对于励磁频率选择不当时,将导致失步现象或过冲现象发生,因此如何防止失步和过冲成为关键。

失步与过冲通常出现在启动与停止阶段。若直接以要求运行速度启动,因为该速度已超过极限启动频率而无法正常启动,这可能会导致丢步甚至无法启动。此外,当达到终点后立即停止发送脉冲串,将使转子转到接近终点平衡位置并停留,从而产生过冲现象。在此基础上,加减速控制通过软件实现,以改变输出脉冲时间间隔来升速或降速,其加减速曲线如图所示。

采用微处理器对步进电机进行加减速控制,即改变输出脉冲时间间隔,使升速时脉冲频率逐渐增加,而降慢时逐渐减少。使用恒加速度算法,便于操作且效果良好,如图2所示,其中阴影部分面积代表1个旋转周期。

设定m为第m次加速时每一步频率Fm,以及前一刻Fm-1;a表示加速度,为斜率,则a = (Fm - Fm-1) / Δtm; 另有((Fm + Fm-1) * Δtm)/2 = 1; 由此两式推出:A = ((fmax-f0)(fmax+f0))/(2trans); 软件实现采用定时器中断方式,该函数如下:

void pulse (REG16 f0, REG16 fmax, REG16 tran, REG16 steep){

UINT16 I;

SysDisableInt(INT_TIMER0);

SysSetInterrupt(INT_TIMER0, OnTimer2);

trans = tran;

A = ((fmax-f0)(fmax+f0))/(2trans);

for(i=0;i<= trans;i++){

f[i] += sqrt_16(2Ai+f0*f0);}

f[i]++;

TMOD= 000; //disable timer

TDATA= 50e6/f[i];//设置初始值

TMOD= 03; //enable timer in interval mode

steep++;

tempstep++;

if(tempstep == step){

output++;

status++;}

SysEnableInt(INT_TIMER);

}

其中f[ ]为起始脉隆波数,f[max]为匀速状态下最大波数,tran为过渡期节拍数,steep总节拍数。

结语:

利用ARM芯片S3C4510等核心微处理器具有高速计算能力及输出高频脉波功能,加上合理设计的加减控策略,可以保证快速安全地运行大量经济型自动化设备,如代替PC型数控机床,大幅度降低成本,同时保持精确性。这类嵌入式系统通常基于实时操作系统,如UCOS-II,与定时中断调度相互依赖,在移植过程中需要格外小心避免干扰以保证整个系统稳定运行。

猜你喜欢