基于STM32F103VCT6的微位移控制系统设计
图4是一个计数器操作的实例,显示了计数信号的产生和方向控制,还显示了当选择双边沿时,输入抖动是如何被抑制的;抖动可能会在传感器的位置靠近一个转换点时产生。在这个例子中,假定配置如下:
CC1S=01 (TIMx_CCMR1寄存器,IC1FP1映射到TI1)
CC2S=01 (TIMx_CCMR2寄存器,IC2FP2映射到TI2)
CC1P=0 (TIMx_CCER寄存器,IC1FP1不反相,IC1FP1=TI1)
CC2P=0 (TIMx_CCER寄存器,IC2FP2不反相,IC2FP2=TI2)
SMS=011 (TIMx_SMCR寄存器,所有的输入均在上升沿和下降沿有效),
CEN=1 (TIMx_CR1寄存器,计数器使能)
2 系统软件设计
2.1 上位机软件设计
上位机界面基于VB进行设计,包括初始状态设定,步进电机命令输入,运行模式选择,调频的实现,限位开关,反馈显示,如图5所示。
2.2 下位机软件设计
下位机程序基于RealView MDK开发环境进行开发。RealView MDK集成了业内最领先的技术,包括μVision3集成开发环境与RealView编译器。支持ARM7、ARM9和最新的Cortex-M3核处理器,自动配置启动代码,集成FLASH烧写模块,强大的Simulation设备模拟,性能分析等功能。程序采用模块化设计,在主函数中实现系统的时钟配置、中断配置、通用输入/输出配置、硬件初始化和用户函数的调用。用户函数包括步进电机运动程序、反馈信号处理程序、限位信号处理程序、频率调节程序等。驱动步进电机所需的脉冲由定时器中断产生。定时器工作模式的向上计数模式,当计数器溢出时产生更新事件。所有的寄存器都被更新,计数器重新开始计数。在程序中设置脉冲启动频率为50 Hz,加减速频率为50 Hz/脉冲,可以改善步进电机运动的平稳性,流程图如图6所示。
2.3 串口通信协议的编写
上位机与下位机通信采用串口通信,波特率为9 600 b/s、8位数据、一个停止位、无校验、无流量控制、接收发使能。
上位机与下位机之间的控制命令采用9个字节每帧,包括电机选择、命令、数据、校验等。
3 实验
在微位移系统测量实验过程中,采用步进电机步进角为1.8°;步进电机驱动器为8细分;定位机构滚珠丝杠导程为4 mm;光栅传感器分辨率为1μm。理论上每发一个脉冲丝杠移动2.5μm。发送为20 000个脉冲,脉冲频率2 000 Hz。理论上光栅传感器产生50 000个脉冲。控制系统对反馈信号进行计数,并发送偏差命令进行实时修正直到最后达到预定位置。同时也进行了速度调节实验,步进电机运行平稳,验证了系统的可靠性。
4 结论
基于STM32F103VCT6单片机的微位移控制系统实现了对上位机命令的响应、处理及数据交互。通过接收上位机发送的各种命令,STM32F 103VCT6单片机控制系统产生相应的控制信号,并通过步进电机带动滚珠丝杠完成规定的动作。同时通过处理位置反馈信号来判断运动是否到位,使三维微位移系统的运动精度大大提高。而且步进电机采用升、降速控制,避免了步进电机的直接启动与急停,大大地改善了步进电机运动的平稳性,而且输出脉冲频率可以在20 kHz以内调节,具有很宽的速度范围,具有很强的适应性。整体上满足了微位移控制系统的要求。
设计 控制系统 位移 STM32F103VCT6 基于 相关文章:
- 直接变频接收机设计可实现多标准/多频带运行(10-11)
- 基于蓝牙芯片的无线通信模块设计与开发(02-03)
- 无线通信网络设计与现场测试(10-10)
- WiMAX数据传输加密方案设计与实现(05-25)
- 高性能TD-SCDMA接收机的设计(03-15)
- 初步设计WiMAX射频系统(03-29)