基于AVR单片机的核磁共振仪床体检测系统于继铭张晓冬(北京交通大学电气工程学院,北京100044)摘要:本文介绍了由AVR单片机实现的核磁共振仪床体检测系统的硬件与软件设计,深入分析和研究了床体横向运动和纵向运动的精确控制问题。关键词:AVR单片机;检测系统;电机控制;Abstract:ThispaperintroducesthehardwareandfirmwaredesignoftheMRITableJIGbyAVRmicrocomputercontrol.Alsodescribestheprecisecontroloftablemotiononlateralandlongitudedirections.Keywords:AVRMUC;Detectionsystem;Motorcontrol;1引言近年来随着医学技术的快速发展,核磁共振仪已经在大中型医院中被广泛的应用。目前,在核磁共振仪的生产过程中,床体部分要与磁体一起搬入电磁屏蔽室组装后才能进行检测,这对人员和物资都是很大的浪费。针对这种状况,本文设计出了一套核磁共振仪床体部分的运动控制与检测系统,它能够对床体部分独立进行检测,而不必将全部系统在屏蔽室安装后检测,从而降低了核磁共振仪床体部分的生产和检测成本,缩短了生产周期。本设计以通用医疗集团的Ovation5型核磁共振仪的床体为对象,对驱动床体做横向运动的直流步进电机和驱动床体做纵向运动的直流伺服电机的精确控制问题进行较为深入的分析和研究。系统主要采用了ATMEL公司的Atmega128单片机和ALTRA公司的EPM240T100型CPLD芯片作为主控制部分,实现了对床体纵向和横向运动的精确控制和检测。主控电路采用了全数字控制方式和抗干扰设计,具有很高的抗干扰性能。2检测系统的硬件设计2.1系统硬件结构本检测系统主要由主控制板、显示部分、按键开关、传感器、串行通信和电机控制部分构成。床体的运动分为横向运动和纵向运动两种状态,分别由直流步进电机和直流伺服电机实现。本系统的硬件结构如图1所示。图1系统硬件结构示意图从图1可以看出,电机的逻辑控制由主控制板实现。系统经过初始化之后,当开关或按键发出通断信号给主控制板时,由单片机判断床体当前的状态,如果床体没有处于极限位置,则单片机向相应的电机发出驱动信号,驱动床体向相应的方向运动,否则床体停止运动。横向运动采用开环控制,运动位置由单片机发出的脉冲个数决定。纵向运动采用闭环控制,由连接在直流伺服电机上的编码器反馈位置信号给主控制板。2.2主控制板硬件设计主控制板主要由AVR单片机、CPLD、滤波电路、电平转换电路和串口通信电路等构成。AVR单片机主要实现控制功能,CPLD主要实现I/O口扩展、逻辑判断和对输入、输出信号的编码解码功能。本系统采用的AVRAtmega128单片机是一种高性能、低功耗的8位微处理器,采用先进的RISC结构,133条指令大多数可以在一个时钟周期内完成,满足了本系统对执行速度的要求。它具有非易失性的程序和数据存储器,128K字节的系统内可编程Flash。由于本系统在对纵向距离的增减,横向距离的增减,键盘扫描等程序设计均需要使用定时器。而此单片机分别提供了两个具有独立的预分频器和比较器功能的8位定时器/计数器,以及两个具有预分频器、比较功能和捕捉功能的16位定时器/计数器。它具有两路8位PWM和6路分辨率可编程(2到16位)的PWM输出比较调制器。它具有独立片内振荡器的可编程看门狗定时器,能够有效防止程序跑飞。图2主控制板硬件框图主控制板硬件框图如图2所示,系统初始化后,当有运动按键信号输入单片机时,单片机将输出相应的纵向或横向控制信号。单片机接收经过滤波后的纵向电机编码器的信号,由内部程序计算当前的横向和纵向位置,并将当前的位置信息输出到CPLD,由CPLD驱动显示部分,显示当前的横向和纵向位置。在寿命测试模式下,纵向显示部分也同时可以显示寿命测试计数。本系统具有串行通信功能,能够通过串行接口与PC机或其他设备通信。3控制系统的软件设计主控制板首先接收来自用户的操作信号,然后根据这些信号的状态,通过AVR单片机和CPLD内部程序实现对电机的控制和显示功能。在本检测系统中,由于需要控制和显示的信息很多,并且关联性很强,因此需要对单片机进行复杂的编程才能实现各个功能。对本系统而言,AVR单片机固化程序的质量,直接影响到了整个系统的运行稳定性和控制精度,因此AVR...