基于FPGA用于热疗的系统设计

2010-02-26 09:40蒋双燕黄秋萍
电子与封装 2010年10期
关键词:热疗控制算法按键

蒋双燕,黄秋萍

(1.苏州大学,江苏 苏州215021;2.苏州高等职业技术学校,江苏 苏州 215009)

1 引言

热疗是泛指用加热来治疗肿瘤的一类治疗方法。基本原理是利用物理能量加热人体全身或局部,使肿瘤组织温度上升到有效治疗温度,并维持一定时间,利用正常组织和肿瘤细胞对温度耐受能力的差异,达到既能使肿瘤细胞凋亡、又不损伤正常组织的治疗目的。

热疗已成为继手术、放疗、化疗和免疫疗法之后的第五大疗法,是治疗肿瘤的一种新的有效手段。它能够更有效地杀伤恶性肿瘤细胞,提高病人的生存质量,延长病人的生命,同时又减轻放疗和化疗所产生的副作用,因此被称为是“绿色疗法”。

实验表明,在42℃区域,温度差1℃就可引起细胞存活率的成倍变化,因此,热疗中的温度精确控制和测量有着十分重要的意义。可以说,热疗中能否准确测温和精确控温是取得疗效的关键。

常用的温度传感器,如热敏电阻等模拟类的器件,具有非线性及参数不一致等特点,在更换时因放大器零漂问题而需对电路重新调试。而对于温度场的控制方法,多采用以CPU或单片机为核心的控制系统。

本文主要针对热疗系统的温度测控进行研究,设计一种基于FPGA用于热疗系统中的温度控制系统,通过程序控制来实现热疗过程中肿瘤组织温度的动态实时监测与高精度智能控制,以较高的温度控制精度来保证热疗的疗效。

2 系统整体框图

热疗系统的整体框图如图1所示,设置热疗系统的热疗温度为42℃,信号的频率为0.5MHz,经过500Hz占空比可调的调制信号调制后输出控制信号。FPGA作为控制器控制加温的全过程,设定温度通过控制面板向FPGA输入,DS18B20对温度场进行温度测量,并且将实时数字测量值送回FPGA,FPGA将测量值与设定值进行比较,经过控制算法的处理后,确定调制信号的占空比。控制信号经过隔离电路与驱动电路,加到工作极板上,极板间介质的加热功率可通过调整500Hz调制信号的占空比来控制。

热疗系统的技术参数如下:

(1)功率电源电压56V;

(2)热疗工作频率0.5MHz;

(3)温度测量范围0~63℃,测控温精度±0.1℃。

3 系统硬件设计

系统硬件电路主要包括FPGA及其配置电路、电源电路、光耦隔离电路、驱动电路、控制面板和显示单元,如图2所示。

温控系统的硬件以FPGA为核心,采用这种方案的最大优点是可实现两者优势互补,借助VHDL语言编程的灵活性及FPGA具有在系统编程的特点,使得电路结构简单、灵活,易于修改,大大缩短了系统开发研制周期。本文使用的FPGA芯片是 Altera的Cyclone系列FPGA芯片,型号为EP1C6,容量为120 000门,TQFP144封装,并采用了Altera提供的专用配置芯片EPC2对其进行数据配置,外部20MHz的石英晶振为FPGA提供时钟信号;EP1C6所需的2.5V和3.3V电压由外部5V电源通过电源电路获得;控制面板由指拨开关和按钮构成,指拨开关用来控制数码管的显示,按钮用来向FPGA输入设定温度;为避免驱动电路对控制电路的干扰,采用1MHz的高速光耦6N137进行隔离,控制对象的加热功率由驱动电路中的56V电源提供,DS18B20为高精度数字温度传感器。

DS18B20提供9~12位精度的温度测量;电源供电范围是3.0V~5.5V;温度测量范围-55℃~+125℃,在-10℃~+85℃范围内,测量精度是±0.5℃;增量值最小可为0.062 5℃;将测量温度转换为12bit的数字量最大需750ms。

4 基于FPGA的温度测控部件设计

基于FPGA的温度测控部件功能框图如图3所示。指定温度通过外部的两个按钮式按键输入,对这两个按键进行了弹跳消除处理,指拨电平开关Set用来对温度设置进行控制,而Show_set是温度显示选择开关。系统时钟由外部20MHz的石英晶振提供,经过分频处理得到500kHz占空比为50%的信号和500Hz占空比在0~40%可调的调制信号,同时为DS18B20提供同步信号。指定温度和经DS18B20测量得到的实际温度经过处理转换成4位十进制数以后,通过数码管显示其数值。根据指定温度和实际温度,由控制算法得到相应占空比的两路带死区的互补调制信号。500kHz信号经调制信号调制后,经过光耦隔离电路和驱动电路,最后加到工作电容上。

4.1 温度设置子模块

因为本设计有效的温度范围是30℃~45℃,所以设定的最低温度为30℃,最高温度为45℃。也即温度设置范围是30.00℃~45.00℃。为了与测量温度一致,设定温度也用二进制数来表示:低四位为小数部分,高六位为整数部分,起始设置温度为“0111100000”即30.00℃。通过面板上的两个单脉冲按钮(rise和down)和一个选择位开关(set)来设定温度。 Rise用来增加温度,Down用来减小温度,每按一次都是增加或减小一个十进制数。Set用来选择设定的温度是整数部分还是小数部分,当Set=1时,设置整数部分,Set=0时,设置小数部分。

4.2 按键弹跳消除子模块

一般按键的弹跳现象,虽然只是按下按键一次然后放掉,结果在按键信号稳定前后,会出现一些不该存在的噪声,如果将这样的信号直接输入至计数器电路,将可能发生计数超过一次以上的错误。所以设计了弹跳消除电路,以避免这种情况。

本模块有3个端口:按键输入key_press、时钟脉冲信号输入clk100和一个时钟脉冲周期宽度的单脉冲输出信号singal_pulse,本电路由两部分组成。

4.2.1 电路上半部分消抖电路

key_press信号经过两级D触发器延时成立后,再用RS触发器进行处理。

假设一般人的按键速度是10次/s,亦即按键时间是100ms,所以按下的时间可估算为50ms。如果取样信号clk_div频率为10ms(100Hz)则可取样5次。对于不稳定的噪声在5ms以下,至少可以取样一次。RS触发器前接上与非门后,则RS的组态为:(1)S=0,R=0,plus=不变;(2)S=1,R=0,plus=1;(3)S=0,R=1,plus=0,即必须抽样到两次1(认为是稳定的按下按键)才会输出1,两次0(认为已是稳定的放掉按键)才会输出0。该部分电路已经可以完成消抖的功能。

4.2.2 下半部分微分电路

为了避免因信号的长度不同而使计数器产生错误,在上半部分电路再接一级微分电路,然后才接至计数器电路。

电路的仿真如图4所示,从plus波形可以发现,由外部输入类似按键的key_press信号前后噪声都被消除掉了;而且再经过一次微分后,输出信号single_pulse的宽度也只有一个时钟脉冲周期了。

5 控制算法的设计

传统的控制系统中,控制算法是由系统的数学模型确定的。在本文中,被控制对象是患者的体内温度,由于每个患者的情况各不相同,因此,对于这样的不确定对象建立确定的数学模型是很困难的。所以本热疗系统采用了模糊控制作为系统的控制算法。

模糊控制系统是一种自动控制系统,它以模糊数学、模糊语言形式的知识表示和逻辑规则推理为理论基础,采用计算机控制技术构成的一种具有反馈通道的闭环结构的数字控制系统,它的组成核心是具有智能性的模糊控制器。在本设计中,采用以温度偏差作为输入,以500Hz调制信号(pwm波)的占空比数为输出量的一维模糊控制器结构。

pwm波生成子模块的输入信号为pwm占空比控制信号(ctrl)和10kHz的输入时钟(clk),输出为两路pwm波。两路调制方波信号pwm1和pwm2的关系如图5所示(此处占空比为40%),它们几何对称,且为避免功率放大电路MOS管的全部导通,它们之间有一定的死区(调制信号的占空比最大为40%)。因为占空比的精度是5%,所以可用10kHz的方波信号再20分频得到。

由于篇幅的限制,无法对所有模块进行介绍,本设计的所有模块都进行了仿真验证并最终下载到Altera的Cyclone系列FPGA芯片EP1C6中,对整个系统进行了整体调式并获通过。

6 结论

本设计使用了高精度数字温度传感器DS18B20和可编程逻辑器件FPGA来实现热疗温度场测温和控温的系统。该系统包含了温度设置、温度显示、控制算法、FPGA芯片的配置等。该系统的疗效有待实验的进一步验证。

[1]Samir Palnitkar Verilog HDL. A Guide to Digital Design and Synthesis Second Edition.

[2]王金明.数字系统设计与Verilog HDL[M].北京:电子工业出版社,2009.

[3]李运智,唐露新.热疗中测控温技术发展现状[J].北京生物医学工程,2008,(03):315-319.

[4]邵汛帆,张珊文.肿瘤全身热疗的临床进展[J].国际肿瘤学杂志,2005(12):915-917.

[5]张晓兰,郭冰菁,朱坚民,等.基于Mcu和cPLD的热温度模糊控制系统[J].河南科技大学学报:自然科学版,2007,28(4):24-27.

猜你喜欢
热疗控制算法按键
基于有限状态机的按键检测程序设计
基于ARM+FPGA的模块化同步控制算法研究
一种多方向导光按键结构设计
介入化疗栓塞联合腹部热疗治疗晚期胃癌的近远期疗效探讨
一种优化的基于ARM Cortex-M3电池组均衡控制算法应用
进展期胃癌热疗联合其他治疗的进展
体外高频热疗联合电针治疗腰椎间盘突出症疗效观察
电针及高频热疗机治疗腰椎间盘突出症85例
滑模控制算法在在线式大功率UPS高频整流器中的应用
一种非圆旋转工件支撑装置控制算法