在汽车Can总线协议下反问基于ARM芯片S3C4510的步进电机能否实现加减速控制

  • 科研动态
  • 2025年01月26日
  • 随着工业的进步,嵌入式技术得到了广泛的应用和成熟。ARM嵌入式处理器作为一种高性能、低功耗的32位RISC芯片,支持多种操作系统、高主频、强运算能力,并可兼容8/16位器件,同时具有海量低价SDRAM数据存储器。它因其功能和商业价值而受到各行各业青睐,尤其在控制领域取得了越来越广泛的应用。在运动控制系统中利用以ARM为内核的嵌入式微处理器开发,有着巨大的发展空间。

在汽车Can总线协议下反问基于ARM芯片S3C4510的步进电机能否实现加减速控制

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

在某些成本要求较低的运动控制系统中,步进电机常用作执行元件。步进电机在这种场合下的优势是可以开环方式控制,而无需反馈就能对位置和速度进行精确控制。但由于负载位置对控制电路没有反馈,因此步进电机必须正确响应每次励磁变化。如果励磁频率选择不当,将无法移动到新的位置,从而导致失步或过冲现象出现。

因此,在开环控制系统中,防止失步和过冲是关键问题。这些现象主要出现在启动和停止时。当系统以要求运行速度直接启动,但该速度已超过极限启动频率时,就可能发生丢步或根本不能启动。此外,当达到终点后立即停止发送脉冲串时,由于惯性作用,将会使转子转到接近终点平衡位置的下一个平衡位置并停留,从而产生过冲现象。

为了解决这一问题,加减速控制多采用软件实现,分为加速、匀速和减速三个阶段,其曲线如图1所示。在加减速过程中,可以通过改变输出脉冲时间间隔来实现,即升快时逐渐增加脉冲频率,降慢时逐渐降低脉冲频率。

采用恒加速度算法易于操作且效果良好,如图2所示,其中阴影部分面积代表一整步动作。在实际应用中,可以设置m-1个周期后的频率Fm-1与m个周期后的频率Fm之间的一定加速度a=(Fm-Fm-1)/Δtm,并根据此公式计算最大可能达到的加速度A=(((fmax-f0)(fmax+f0))/(2trans))。

软件实现通常使用定时器中断方式,以不断调整定时器装载值大小来生成脉隆波形。由ARM芯片S3C4510中的定时器发出,这样定时器溢出频率应为二倍于需要产生的控端脉隆波形頻率。具体函数如下:

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

UINT16 I;

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

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

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

}

f += 50; //将起始脉搏数增大至50 kHz

TMOD = 0x00; //禁用计数器 0 和计数器 1

TDATA[15:8] = (UINT8)(20000000/f); //设定初始计数值

TMOD = 3; //启用计数器 0 和计数器 1 在间隔模式下工作

}

其中f表示初始驱动信号振荡次数,每次增加100kHz直到达到最小值;TMOD用于配置 Timer 模式;TDATA[15:8](即 TDATA[7:4])用于设置 Timer 的初值,以便产生指定周期信号;最后调用上述函数开始 Timer 计算并生成驱动信号。

总结来说,以ARM芯片S3C4510作为核心构建的小型化、经济型自动化设备能够有效地提供高效稳定的高速运动,为经济型数控机床提供了一种替代方案,同时避免了传统基于PC机的大型机械结构带来的成本支出。此外,在设计嵌入式实 时操作系统及相关硬件驱动程序方面要特别注意避免资源竞争等潜在的问题以保证整个系統稳定运行。

猜你喜欢