张从鹏,徐 兵,徐宏海
(北方工业大学机电工程学院,北京 100144)
目前广泛应用的角度测量传感器多为机械接触式编码器、光电编码器、光栅传感器等,为了不丢失传感器断电时的数据,以绝对值型编码器作为角度测量的首选。首先,多数传感器角度测量范围为单圈0~360°,不能实现多圈测量或可设定量程测量;其次,单圈分辨率太低,一般为12位;最后,采用传统机械结构的角度传感器普遍使用寿命不高,抗冲击、振动能力较差,如果遇到潮湿、高温等恶劣工作环境时,传感器测量精度和准确度会受到很大影响[1]。文中基于STM32微控制器,设计了多圈绝对角度传感器的硬件电路模块以及智能化软件,并通过性能测试实验系统验证传感器的独立线性精度和测量精度。
采用MLX90316作为磁敏绝对角度位置获取芯片,以STM32作为系统MCU,设计角度信号采集电路、电源电路、通信电路,并进行软件设计。
STM32F103是一款增强型芯片,使用高性能的ARM Cortex-M3 32位的RISC内核,工作频率72 MHz,内置高速存储器(高达128 K字节的闪存和20 K字节的SRAM),具备3路串行SPI接口、2路12位D/A转换器和5路USART接口,工作温度范围为-40~+105 ℃,工作电压2.0~3.6 V,完全满足低功耗应用的要求。
角度信号采集采用绝对角度位置传感器芯片MLX90316,MLX90316是一款采用三轴霍尔技术的传感芯片,可感应出旋转范围在0~360°的角度位置,小型径向充磁的磁铁在霍尔芯片上旋转,霍尔芯片可获取磁场的2个矢量Bx和By[2],通过芯片内部的ADC转化为数字信号Vx和Vy传输给DSP模块进行处理,角度位置计算公式为
α=ATAN(Vy/Vx)
式中ATAN通过查找表实现,运算用到比例值Vy/Vx.
由于磁场强度、温度等因素的变化会同时作用于信号Vx和Vy上,因此角度信号具有自适应补偿的特点,相对于传统的霍尔芯片,MLX90316芯片在环境变化下精确度得到很大的提高。
MLX90316芯片数字输出信号具有14 bit角度分辨率,微控制芯片STM32F103通过串行接口SPI采集到霍尔芯片传输的数字量角度位置信号后进行一系列内部处理,最终通过收发器MAX485进行RS485通信并通过STM32F103内部DAC进行模拟量输出[3]。系统整体设计方案如图1所示。
图1 系统整体框图
多圈绝对角度传感器的机械结构主要包括上盖、下盖、轴、轴承、弹性挡圈。MLX90316的磁铁规格要求为芯片表面磁场强度50 mT,该系统采用钕铁硼磁铁,完全满足MLX90316芯片对磁场强度的要求。上盖定位传感器电路板,保持MLX90316芯片中心与轴中心对称,机械结构图如图2所示。
图2 传感器机械结构图
STM32F103的SPI接口在全双工通信模式下通信速率可达18 Mb/s,可以使用DMA操作。MLX90316的串行通信采用三线制的通信协议,其中MOSI-MISO共用1个引脚,采用5 V上限的开漏数字输入或输出。片选引脚SS由微控制芯片STM32的I/O口采用软件模式控制,片选微控制芯片为主机,霍尔芯片为从机[4],SCK信号由主机提供。通信时序图如图3所示,磁敏芯片MLX90316的外围电路设计如图4所示。
图3 SPI时序图
图4 MLX90316外围电路
为实现低功耗的整体系统设计要求,该传感器系统使用DC12V供电,为满足磁敏感芯片5 V供电及微控制器的3.3 V供电要求,采用电源稳压芯片TD1509以及AMS1117。TD1509是一款高效率低损耗、工作稳定、性价比高、使用面广的DC/DC管理芯片。AMS1117是正向低压降稳压器,内部集成过热保护和限流电路,是该系统电源设计方案中较理想的选择。电源电路设计图如图5所示。
图5 电源电路设计
STM32F103具备3路USART接口,其中一个USART接口的通信速率可达4.5 Mb/s,其他的USART接口通信速率可达2.25 Mb/s,可以使用DMA操作[5]。
采用RS485通信协议传输数据。RS485是一种常用的数字通信方式,主从通讯双工通信模式,平衡传输,抗干扰强,可多机并联,只需要单5 V电源,一般可传输1 km.MAX485是一款低功耗的通信收发器,驱动摆率不受限制[6],可以实现最高2.5 Mbit/s的传输速率,满足灌区闸门开度实时采集的要求。RS485通信电路如图6所示。
图6 RS485通信电路设计图
基于MDK-ARM专业版 uVision V4.7编程环境,开发了传感器应用软件,程序流程图如图7所示。
图7 软件程序流程图
测试方法及过程为:将RS485型多圈角度传感器通过联轴器和3 000 r/min伺服电机连接;并通过PMAC运动控制卡对伺服电机进行位置环和速度环的双闭环控制,使其定位精确;通过RS485接口将传感器角度信号读取出来,然后将多圈角度传感器测量得到的角位置和运动控制卡的反馈值进行比较,分析并测定多圈绝对角度传感器的测量精度、线性度等性能[7]。传感器性能测试现场如图8所示。
根据计算公式Lout=(ΔYmax/ΔYout)×100%,可以得出多圈角度传感器的独立线性精度为0.039%,测量精度为0.02°,实验结果证明多圈角度传感器设计达到了预期的设计目的。
实验条件为:伺服电机编码器分辨率为8 192 脉冲/转,电机转速为2 850 r/min,每次增量进给910个脉冲,实验数据记录如表1所示。
图8 多圈角度传感器测试现场图
基于非接触磁敏感测量技术,开发了高性能微处理器的智能多圈绝对值角度传感器,该传感器具有测量精度高、测量量程可调、适应恶劣工况等特点。实验结果表明:角度传感器的独立线性精度达到0.039%,测量精度达到0.02°,可以满足各种工业角位置测量的需求。
表1 多圈绝对角度传感器实验结果
参考文献:
[1] 于静,张吉月.一种新型数字式角度传感器的研究 .微计算机信息,2007(1):163-165.
[2] 张珂,杨其华,李冰,等基于霍尔器件的非接触式角度传感器研制.传感技术学报,2008,12(16):981-984.
[3] JEAN PAUL Y,ALBERT F,SEBASTIEN A.A differential magnetic position sensor.Sensors and Actuators,2000,81:340-342.
[4] 武新军,康宜华,卢文祥,等.非接触式霍尔位移传感器的研制及应用.华中理工大学学报,1998,26(2):53-54.
[5] 彭刚,春志强.基于ARM Cortex-M3的STM32系列嵌入式微控制器应用实践.北京:电子工业出版社,2011.
[6] 韩少云,奚海蛟,谌利.ARM嵌入式系统移植实战开发.北京:北京航空航天大学出版社,2012.
[7] 马军山,王向朝,方祖捷,等.精密角度传感器及其标定技术的研究.光学学报,2001,21(2):232-235.