(信号与信息处理专业论文)食品微生物atp荧光快速检测仪的软件设计.pdf_第1页
(信号与信息处理专业论文)食品微生物atp荧光快速检测仪的软件设计.pdf_第2页
(信号与信息处理专业论文)食品微生物atp荧光快速检测仪的软件设计.pdf_第3页
(信号与信息处理专业论文)食品微生物atp荧光快速检测仪的软件设计.pdf_第4页
(信号与信息处理专业论文)食品微生物atp荧光快速检测仪的软件设计.pdf_第5页
已阅读5页,还剩51页未读 继续免费阅读

(信号与信息处理专业论文)食品微生物atp荧光快速检测仪的软件设计.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

食品微生物a t p 荧光快速检测仪的软件设计 摘要 食品微生物a t p 荧光快速检测仪是应用于食品卫生领域的高科技卫生器 械,它利用a t p 生物化学发光技术来检测食品中微生物含量。本系统包含嵌入 式系统应用程序和上位机数据分析软件两部分。 嵌入式系统采用嵌入式实时操作系统i - t c o s i i 管理整个软件系统,其应用 程序按照功能可分为:键盘管理、l c d 显示、模拟信号采集、数据存取和串口 通信等任务。 上位机数据分析软件可分为:系统登陆、用户管理、数据管理、数据分析、 数据库维护以及串口通信等模块。该软件可实现原始数据的读取、查询、统计、 图表生成、参数设置等功能。 针对传统a t p 荧光检测数学模型只能在2 5 下对1 0 - 15 1 0 。1 m o l 量a t p 进行线性检测的问题,提出了基于径向基函数( r b f ) 神经网络的a t p 荧光检 测数学模型,采用改进型k 一均值聚类算法动态确定r b f 网络中心,提高了 r b f 网络的自适应性及泛化能力,为复杂系统中a t p 量的检测提供了一条有效 途径,能在+ 10 。c - - + 4 0 范围内对10 - 15 10 - 8 m o l 量a t p 实时在线检测。 实验结果表明:该仪器检测迅速、精度高、重复性好、操作方便,能够很 好的满足食品卫生检测的需求。 关键:a t p ;检测仪:软件设计;数学模型 s o f t w a r ed e s i g no ft h ef o o dm i c r o b ea t p d e t e c t i n gi ns t r um e n t f l u o r e s c e n c er a p i d a b s t r a c t f o o dm i c r o b ea t pf l u o r e s c e n c er a p i dd e t e c t i n gi n s t r u m e n ti sah i g h - t e c hh y g i e n e i n s t r u m e n ta p p l i e dt of o o dh y g i e n e w h i c hm a k e su s eo fa t pb i o l u m i n e s c e n c et e c h n i q u et o e x a m i n et h ec o n t e n to fm i c r o b eo nf o o d t h es y s t e mc o n t a i n sa p p l yp r o g r a mb a s i n go n e m b e d d e ds y s t e ma n dt h ed a t aa n a l y s i ss o f t w a r ee m b o d i e di nt h eu p p e rm a c h i n e s e m b e d d e ds y s t e mm a k e su s eo fe m b e d d e dr e a l - t i m eo p e r a t i n gs y s t e ml a c o s i it o m a n a g ea l lt h es o f t w a r es y s t e m t h es o f t w a r es y s t e mi n c l u d e ss e v e r a lf u n c t i o n ss u c ha s k e y b o a r dm a n a g e m e n t ,l c dd i s p l a y , a n a l o gs i g n a la c q u i s i t i o n ,d a t a a c c e s ss e r i a l c o m m u n i c a t i o na n ds oo n 1 1 1 ed a t aa n a l y s i ss o f t w a r ee m b o d i e di nt h eu p p e rm a c h i n e sh a ss e v e r a lm o d u l e s c o n t a i n i n gs y s t e ml a n d i n g ,u s e rm a n a g e m e n t ,d a t am a n a g e m e n t ,d a t aa n a l y s i s ,d a t a b a s e m a i n t e n a n c e t h es o f t w a r ec a ni m p l e m e n ts e v e r a lf u n c t i o n ss u c ha sr e a d i n go fo r i g i n a ld a t a , q u e r y , s t a t i s t i c ,c r e a t i n gg r a p h ,s e t u pp a r a m e t e r s am a t h e m a t i cm o d e lo fa t pf l u o r e s c e n c ed e t e c t i o nb a s e do nr b fn e u r a ln e t w o r kh a s b e e np r o p o s e dt oa g a i n s tt h el i n e a r - d e t e c t i o no f10 - 15 - - - 10 一llm o la t pb yt h et r a d i t i o n a l m a t h e m a t i cm o d e lo fa t pf l u o r e s c e n c ed e t e c t i o nb e l o w2 5 c t h ei m p r o v e dk - - m e a n s c l u s t e r i n ga l g o r i t h m ss e a r c h i n gf o rt h en e t w o r k c e n t e r sh a sb e e na p p l i e dt oi m p r o v et h es e l f a d a p ti o na n dg e n e r a l i z a t i o no fr b f n e t w o r k i tc a l ls o l v et h ep r o b l e mo fa t pd e t e c t i o n i nt h ec o m p l i c a t e ds y s t e m t h ee x p e r i m e n t a lr e s u l ts h o w st h a tt h em o d e lw h i c hh a sh i g h m e a s u r e m e n ta c c u r a c yc a nd or e a l t i m ed e t e c t i o no f1 0 1 5 - - , 1 0 8m o la t pb e t w e e n + 1 0 a n d + 4 0 t h ee x p e r i m e n t a lr e s u l ts h o w st h a tt h ei n s t r u m e n th a st h ea d v a n t a g e so fs h o r t m e a s u r e m e n tt i m e ,h i g hm e a s u r e m e n ta c c u r a c y , h i g he f f i c i e n c y , w h i c hm e e t sd e m a n do f f o o dh y g i e n ed e t e c t i n g k e y w o r d s :a t p ;d e t e c t i n gi n s t r u m e n t ;s o f t w a r ed e s i g n ;m a t h e m a t i c sm o d e l 插图清单 图1 1 国外比较先进的a t p 荧光检测仪2 图2 1a t p 标准曲线6 图2 2 系统体系结构9 图2 3 硬件电路结构图9 图2 4 嵌入式系统体系结构图1 0 图2 5 应用程序总体结构图1 0 图3 1 嵌入式应用软件的总体构架1 1 图3 2 初始化任务栈结构1 3 图3 3 系统守护任务的流程图1 8 图3 4 键盘读取应用图1 9 图3 5 数据读取流程图2 0 图3 6 数据采集处理任务的流程图2 l 图3 7 程序号上下限设置图2 2 图4 1 上位机数据分析软件结构2 4 图4 2 登陆窗体3 0 图4 3 系统主界面3 0 图4 4 系统管理模块功能图3 1 图4 5 添加备注流程图3 2 图4 6 数据查询对话框3 2 图4 7 数据统计对话框3 5 图4 8 数据分析模块对话框3 5 图4 9 四个典型的图形风格3 6 图4 1 0 数据维护模块结构图3 6 图5 1 串口通信结构图4 0 图5 2 时钟初始化窗口4 l 图5 3 上载设置程序窗口4 1 图5 4 上载测试记录的界面4 1 图5 5 串口数据包发送流程图4 2 图5 6 串口数据接收流程图4 2 图5 7 串口发送任务流程图4 3 列表清单 表2 1 系统需求分析4 表2 2 嵌入式系统规格说明4 表2 3 数据分析软件的规格4 表3 1 按键功能表1 9 表3 2 存储格式2 0 表3 3 测试结果判断表2 3 表4 1 程序数据结构表2 8 表4 2 测试案例结构表2 9 表4 3 数据统计方法3 4 表5 1 上位机发送给检测仪的每帧数据格式3 7 表5 2 检测仪回送给通讯机的每帧数据格式3 8 表5 3 上载数据接收出错时“应答帧 格式3 8 表5 4 下传数据接收出错时“应答帧 格式3 8 表5 5 上载测试记录的数据块格式3 9 表5 6 上载命令字列表3 9 表5 7 下传命令字列表3 9 独创性声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工作及取得的研究成果。据我所 知,除了文中特,i i j ;b t l 以标志和致谢的地方外,论文中不包含其他人已经发表或撰写过的研究成果, 也不包含为获得盒胆至些太堂或其他教育机构的学位或证书而使用过的材料。与我一同工作 的同志对本研究所做的任何贡献均已在论文中作了明确的说明并表示谢意。 学位论文储糠鬣净字日期删年 学位论文版权使用授权书 相加 l 本学位论文作者完全了解金胆王些态堂有关保留、使用学位论文的规定,有权保留并向 国家有关部门或机构送交论文的复印件和磁盘,允许论文被查阅或借阅。本人授权金壁王些太 ! l 可以将学位论文的全部或部分论文内容编入有关数据库进行检索,可以采用影印、缩印或扫 描等复制手段保存、汇编学位论文。 ( 保密的学位论文在解密后适用本授权书) 学位论文者签名:芑挈 矿or 签字日期咖7 年午月,如日 学位论文作者毕业后去向: 工作单位: 通讯地址: 导师签名:办虹 柳飙中 谢辞 本学位论文是在吴永忠副教授的悉心指导和严格要求之下完成的。在攻读 硕士学位期间,吴老师以其渊博的学识、严谨的治学态度和踏实的工作作风在 学业上和生活上给予我很多关怀和帮助,使我受益终身。至此论文完成之际, 谨向恩师致以由衷的感谢和诚挚的祝福! 在课题的研究和设计过程中,郭太峰副教授和刘勤勤老师在我遇到困难时 给予我耐心指导和帮助,在此我也深表谢意! 同时,我还要感谢实验室的同学们。他们是孟宏、王尚本、李宗伟等。他 们无私的帮助,积极的配合使我学业上得到了很大的进步,课题得以顺利完成。 最后感谢我的父母,是他们多年无私的奉献,默默的支持,才让我走到今 天,最终完成学业。感谢我的朋友胡翊、郝世杰、潘登凯等一直以来对我的关 心和支持。 感谢计算机与信息学院所有关心帮助过我的老师同学们。 作者:范军 2 0 0 9 年3 月1 9 日 第一章绪论 1 1 课题背景 食品安全是一个直接关系到人民群众生命、健康和社会稳定的重大公共安 全问题。2 0 0 0 年,世界卫生大会通过了食品安全决议,将食品安全列为公 共卫生的优先领域,制定了全球食品安全战略并要求成员国制定相应的行动计 划,最大程度地减少食源性疾病对公共健康的威胁。我国确定的食品安全总目 标为:控制食品污染,减少食源性疾病,保障消费者健康,促进经济发展。制 定的食品安全行动计划内容之一涉及开展食品中生物污染监测与评价。在我国 建立致病菌及真菌毒素的监测网络,对重点食品实施主要食源性致病菌和真菌 毒素污染状况的监测,及时发现潜在的和正在发生的食品中生物性污染问题, 进行危险性评价,用于制定相关的政策法规,指导食品安全监管工作,引导食 品生产和消费。 微生物污染问题是食品安全中极为重要的因素。我国从案例数或人数统计 角度对食物中毒案例的分析资料显示,微生物性食品中毒所占的比例高达6 7 , 而且细菌性食物中毒也是最常见的微生物性食物中毒。2 0 0 2 年,我国正式启动 了“食品放心工程”。国家工商总局在制定流通领域商品质量监管的工作思路时, 也将食品安全监管列为重中之重。因此,如何有效监控流通领域中的食品细菌 性污染,已成为“关口前移 所面临的重要课题之一。 要想全面判断食品的卫生质量状况,就应进行食品卫生质量鉴定,即:查 明食品中是否存在威胁人体健康的有害因素及其来源、性质、作用和含量的技 术程序规范,包括生物、化学、物理的检验方法,以及食品污染、食品中毒等 卫生学和流行病学调查处理的内容和程序等。通过鉴定作为对食品做出食用或 条件食用或不作食用等处理决定的依据。 a t p 荧光法作为一种简便、快速的微生物检验方法和食品生产环境清洁度 的检测方法,近年来在国外倍受注目,并得以广泛应用。a t p 荧光法利用细胞 的特征来测定细菌数,是快速检测菌落总数的一个发展方向i l l 。a t p 是一种高 能磷酸化合物,在生物系统中是能量交换中心,它普遍存在于一切活的微生物, 如细菌、真菌和酵母菌等细胞内,为细胞内活动提供能量。各种细菌中的a t p 含量大致一定,所以通过检测物体表面的a t p 含量,可以估算出表面微生物污 染情况。 应用a t p 荧光技术可以检测出样品中酵母、霉菌、真菌或细菌细胞等多种 微生物的数量,其应用范围深入到多种领域,包括:啤酒细菌总量检测【2 j 、脱 水蔬菜和调味品的细菌总量检测【3 】、乳与乳制品细菌总数检测【4 】、食品器具卫 生学检测【5 1 、生产过程及设备检测、废液处理检测【6 。1 、化妆品检测【8 1 、医学检 验领域i o 。 国外对a t p 荧光技术研究较早,1 9 4 7 年,m e e l o r y 等人就首次进行了f l 对a t p 的检测,到2 0 世纪8 0 年代,英国人首先研制出a t p 检测仪( 检测系统) , 随后发展到欧洲、美国和日本。应用范围涉及食品加工、超市和饮食行业,检 测内容包括微生物和食品残渣。1 9 9 8 年,日本国会颁布了关于食品制造过程 管理高度化临时措施法,其中叩包含了应用a t p 检测仪( 检测系统) 的内容。 1 9 9 9 年,日本还成立了a t p 涂抹检查研究会,专门研究该方法的使用效率和 应用领域,其内容之一就是在食品卫生监测领域中,解决现场微生物的检测问 题。在过去的2 0 年中,荧光素酶a t p 分析的检测极限从1 0 “4 m o l e 提高到了 1 0 1 8 m o l e 。 国内对生物发光的研究起步于2 0 世纪6 0 年代,9 0 年代达到高峰,主要工 作是检测无机物和无机离子。近年来,此项技术已开始应用于医学、农业以及 生命科学等领域。 本课题“食品微生物a t p 荧光快速检测仪的软件设计”受到国家科技型中 小企业技术创新基金项目( 计划编号:0 6 c 2 6 2 13 3 1 1 2 0 8 ) 及安徽省高等学校自 然科学研究基金( 计划编号:k j 2 0 0 8 a 0 7 6 ) 的资助。 1 2 国内外a t p 荧光检测便的发展现状 近年来,由于荧光素酶的价格太幅度的下降,a t p 荧光技术在国外倍受推 崇,在美、日等国已广泛应用,并有专用检测仪器。世界上比较先进的a t p 荧 光检测仪如图ll 所示:美国的a m s a l i t ei i ia t p 荧光分析仪和美国n e o g e n 的a e e u p o i n t a t p 荧光检测仪、日本t o a 的a f 一7 0 5 0 型a t p 细菌快速分析仪、 日本k i k k o m a n 的c 1 0 0 和p d 一1 0 n a t p 检测仪等。 美国a m s a l i t e1 1 1日本 o a a f - 7 0 ,5 0 美囝a c e u p o i n t 酗l1 国外比较先进的a t p 荧光检测投 2 0 0 2 年,我国卫生部颁发了食品加工企业的h a c c p 实施指南,鼓励食品 加工企业引入a t p 检测系统。但是现有的a t p 荧光检测仪大多用于实验室 的科研工作,设备笨重、造价昂贵、检测过程复杂,虽然一些a t p 荧光检测仪 ( 检测系统) 及技术被引进我国,但是到目前为止,除个别省级卫生监督检测 单位装备外,主要是在一些外资或合资企业中自行检测使用。适用于民用和商 用卫生程度的便携式a t p 荧光检测仪在国内几乎是空白。 嵌入式a t p 荧光检测仪具有现场检测,快速,科学,便捷,操作简单,价 格低廉等特点,对构建国家食品卫生放心工程具有重大的社会、经济价值。 1 3 论文主要工作 本文是在所参与的食品微生物a t p 荧光快速检测仪开发项目的基础上,总 结完善而整理出来。依据项目内容,论文的主要研究工作如下: 1 ) 系统总体设计。通过系统需求分析、规格说明和关键技术分析确定系统 的总体设计。 2 ) 下位机嵌入式系统软件设计。选择“c o s i i 并将其移植到单片机上, 并在此基础上完成下位机嵌入式系统的软件设计。 3 ) 上位机数据分析软件设计。包含基于v i s u a lc + + 6 0 和s q ls e r v e r 2 0 0 0 设计实现的配套食品微生物a t p 荧光检测仪的数据分析软件 4 ) 上下位机通信链路的设计。包含了以r s 2 3 2 为标准的通信链路设计。 第二章系统总体设计 2 1 系统需求分析 食品微生物a t p 荧光快速检测仪软件包括下位机嵌入式软件和上位机数据 分析软件。根据系统总体要求,需求分析说明如表2 1 所示。 表2 1 系统需求分析 项目食品微生物a t p 荧光快速检测仪软件设计 系统名称食品微生物a t p 荧光快速检测系统 ( 1 ) 下位机嵌入式系统软件设计: 设计目标 ( 2 ) 上位机数据分析软件设计: 系统输入 光电信号、键盘、串口 系统输出测试数值r l u s 、串口、报表数据、图形显示 ( 1 ) 下位机嵌入式系统在系统上电运行后,首先从存储器中读取历史保存数据, 并启动液晶显示和键盘检测功能。在用户通过键盘和l c d 显示调整检测参数( 如 程序号、上下限等) 后,确定保存进入检测状态。在进入检测状态前,确保舱盖 密闭,才能允许进入检测状态。如果舱盖未密闭则返回。 功能描述 ( 2 ) 上位机数据分析软件对每一个测试值及其测试时间、所用的程序号和所用 的仪器编号等检测因素能够录入保存,以及查询统计等;对录入数据的统计、图 表分析和打印。 ( 3 ) 串口通信功能,方便检测仪器与数据分析软件之间的信息互通:检测的参 数能及时传递到数据分析软件。 2 2 系统规格说明 1 ) 下位机嵌入式系统的规格如表2 2 所示。 表2 2 嵌入式系统规格说明 可移植、可固化、可裁剪及可剥夺型的多任务 嵌入式操作系统g c o s - i i 微内核的开源嵌入式实时操作系统 开发平台 k e i lm d kr e a l v i e w 支持c 语言和汇编语言编程 绝大部分代码都是用a n s ic 语言编写,只有 开发语言 a n s i c 、汇编语言 与微处理器一件相关的那部分是用汇编语言 写的 2 ) 上位机数据分析软件的规格如表2 3 所示。 表2 3 数据分析软件的规格 奔腾系列p c 的r s 2 3 2 端口( 或 主机最低的p c 要求 适配器) 数据库容量 无限 数据库 评论( c o m m e n t ) 文本长度最大值1 0 0 个字符 程序数据 单元数目( u n i t - # ) 最大值 无限 程序号( p r o g ) 最大值 1 0 0 位置( l o c a t i o n ) 名称的长度最大值 5 0 个字符 4 组( g r o u p ) 名称的长度最大值 5 0 个字符 分析方案最大值 无限 分析方案 方案名称长度最大值1 0 0 个字符 筛选条件最大值无限 2 3 系统关键技术分析 由于a t p 荧光反应受各种因素( 如温度、p h 值等) 的影响,a t p 浓度与发 光强度之间整体上为非线性关系,仅在较小范围内呈近似线性关系。但是,实 际中利用a t p 荧光检测技术建立数学模型时,都是基于a t p 浓度与发光强度之间 呈线性关系的方法,这样做可能会引起较大的非线性误差。为了消除或者补偿 a t p 荧光检测中的非线性误差,文献】采用实验手段,通过内在的a t p 标准品 来进行校准,对各种因素的影响进行补偿,但是这种传统的a t p 荧光检测模型 是在2 5 下建立的,未能考虑到检测仪工作环境温度的变化和光电探测器的工 作性能,只能适用于1 0 。1 5 10 - 1 1 m o l a t p 的近似线性检测,不适合在动态温度范 围内对更多a t p 量的检测。 基于r b f 卒* 经网络进行a t p 荧光检测数学模型的研究,其目的就是试图将 人工神经网络技术应用于a t p 荧光检测的数据处理,建立更为准确和有效的a t p 荧光检测数学模型,以提高a t p 荧光检测仪动态工作环境温度下的测量精度和 测量范围。 2 3 1 a t p 荧光检测分析 a t p 是一种高能磷酸化合物,在生物系统中是能量交换中心,它普遍存在 于一切活的微生物,如细菌、真菌和酵母菌等细胞内,为细胞内活动提供能量。 各种细菌中的a t p 含量大致一定( 约1 0 j 8 m o l 个) 1 2 1 ,所以通过检测物体表面 的a t p 含量,可以估算出表面微生物污染情况。 a t p 荧光检测原理为:荧光素酶在a t p 、m g ”和0 2 存在时,它首先与虫荧 光素酰腺苷酸( 由m g 、a t p 与虫荧光素复合而成) 生成复合物l u c l h 2 一a m p ,然 后该复合物释放出质子,酶变构导致虫荧光素氧化脱羧,荧光素分子中的电子 由不稳定的激发态跃迁到低能级而发射出光子。a t p 是荧光素酶的底物之一, 在荧光素酶一a t p 荧光技术体系中,发光强度( ,) 与a t p 的浓度( c a 即) 符合 下列函数关系。 i = l 缸巴即如+ q 仰 ( 2 - 1 ) 式中l 。,为发光强度,k 。= l x l 0 4 。 由上式可知,a t p 浓度c 。仰与发光强度,存在一定的关系,因此可以通过发光体 系,的测定来定量a t p 的浓度。 a t p 荧光反应测定a t p 浓度是一个酶促反应,主要受两个因素的影响:温度 和p h 值。温度对生物荧光反应的影响比较大,一般来说发光反应的发光强度随 温度下降而增加,但由于a t p 荧光反应是酶促反应,温度太低则影响酶的活性。 p h 值对a t p 荧光反应的影响表现在:一方面p h 值直接影响酶的活性,且不同的 荧光素酶要求不同的最适p h 值;另一方面,p h 值直接影响反应过程中激发态分 子的结构,从而影响光子发射效率。 文献 1 1 】提出的传统a t p 荧光检测模型,采用实验手段在2 5 下通为过内在 的a t p 标准品来进行校准,对各种因素的影响进行补偿,其a t p 标准曲线如图2 1 所示。 图2 1a t p 标准曲线 由图2 1 可以很清楚地区分三个区域。在区域a 水平部分时背景,一般是仪 器和试剂背景的产生的背景。需要提到的是“相对光单位( r l u ) 可能会对仪 器背景有误导效果,因为这归因于光电因子释放发射出来的噪音的电子,而没 有任何光子来源的。区域b 是近似的线性范围,最适合定量工作。区域c 是因为 光子饱和而产生的平缓区,浓度的增加没有使得光子输出有任何的提高。 由于未考虑到光电探测器的工作性能,传统的a t p 检测数学模型只能适用 于1 0 - 1 5 1 0 以1 m o l a t p 量的近似线性检测,不适合在动态工作环境温度下进行更 宽范围a t p 量的检测。 如果不使用文献【1 1 】给出的传统数学模型,可以通过调节样品的p h 值( 反 应体系最佳p h 值为7 8 ) 来消除p h 值对a t p 荧光反应的影响。对于温度的影响, 由于a t p 荧光检测仪的工作环境温度变化较大,如果采用恒温装置就会增大仪 器的重量、体积、功耗和结构的复杂程度。实际上,温度不仅影响a t p 荧光反 应还直接影响检测仪的工作性能,造成检测仪放大电路放大倍数的变化,因此 a t p 浓度与发光强度之间的线性关系并不是a t p 荧光检测仪工作的实际数学模 型。 2 3 2r b f 神经网络的引入 人工神经网络具有自学习、泛化功能,并能以任意精度进行非线性映射, 特别适用于解决复杂的、非线性函数关系问题。在a t p 荧光检测的数学建模中 引入神经网络,就如同引入了一个“黑匣子”,其作用是将发光强度和工作环境 温度等参数( 输入) 与a t p 浓度( 输出) 一对应起来。在线测量时处理软件按照 6 所建立的神经网络模型就可以由发光强度和工作环境温度等参数给出与其对应 的待测a t p 浓度。 r b f 网络是神经网络的一种网络模型,在非线性系统建模和辨识方面具有 收敛速度快和逼近能力强的优点【1 3 4 1 。r b f 神经网络是一种三层结构的前馈网 络,输入层节点只是传递输入信号到隐层,隐层节点由核函数构成,而输出层 节点是简单的线性函数。针对a t p 荧光检测的数学建模,输入层设置两个节点 ( 即发光强度、工作环境温度) ,输出层设置一个节点( 即a t p 浓度) 。 隐层节点的传递函数( 即径向基函数) 对输入信号在局部产生响应,即当 输入信号靠近核函数的中央范围时,隐层节点将产生较大的输出。常用的径向 基函数是高斯核函数,如( 2 2 ) 式所示: i ( x c ,) 7 ( x c ) i 吩。冲l 一丁一j ( = 1 ,2 ,) ( 2 2 ) 其中:甜f 是第,个隐层节点的输出,x = ( 而,x 2 ,x ,) 7 是输入样本,c ,是高 斯函数的中心值,仃,是标准偏差,是隐层节点数。由式( 2 - 2 ) 可知,隐层 节点的输出范围为( 0 ,1 ) ,且输入愈靠近隐层节点的中心,输出值愈大。 r b f 网络的输出为隐层节点输出的线性组合,即: 只= 均一0 = 彬7 u 户1 ( f = 1 ,2 ,m ) ( 2 3 ) 其中”是输出层第f 个节点的输出值,形为核函数连接到输出层第f 个节点 的权值集合,u 为隐层节点的输出集合。 r b f 神经网络的学习分为3 个部分:径向基函数中心c ,的学习、径向基函数 宽度仃,的学习、隐层与输出层之间连接权值彬的学习。上述3 项学习一般是分 开进行的,径向基函数中心的选取至关重要,在此将动态自适应聚类算法f 1 5 j 6 】 应用于径向基函数中心的调整,它无需事先确定聚类数,并且完成聚类所得到 的r b f 神经网络是最优的。其具体算法如下: 第一步,初始化聚类中心,即根据经验从训练样本集中随机选取个不同 的样本作为初始化中心c ,。 第二步,将所有训练样本x 按最近的聚类中心分类,即: 如果 0 乃一e e 0 = m i n lx , 一巳e 0 ( 2 - 4 ) 其中1 p p ,尸为样本总数,则将样本x 。划归为类s 。 第三步,计算各类的样本均值,修改聚类中心。 巳2 古善x 池5 , 其中,是样本类s ,中的样本个数。 7 第四步,重复二、三步直到所有聚类中心满足以下公式: | | x 一x 川 旯,( 兄为某个预定的阈值,值越小,该算法最后得到的中心个 数越多) 则增加中心个数n = n + i ,并用样本e 初始化这个新增加的中心,然后 转到第二步,否则进入第六步。 第六步,将各个聚类中心赋给各r b f 单元,作为r b f 网络的中心。 聚类中心确定之后,其宽度的选取往往根据聚类的结果来确定。一般令它 等于聚类中心与训练样本之间的平均距离,即: 1 一 仃,= ( x - c j e ) 。( x c f e ) ( 2 8 ) 。 v , 一 。 其中x s j 。 r b f :冲经网络权值的学习通常采用梯度下降算法f 】。 基于r b f 丰o 经网络建立了a t p 荧光检测数学模型,有效解决了发光强度、 工作温度以及与其对应的a t p 浓度之间存在的非线性动态不确定关系的建模问 题。该模型收敛速度快,泛化能力强,测试精度高,检测范围广,可以较好地 描述实际对象的特性。 2 。4 系统体系结构设计 在软件开发项目的整个设计过程中,选择一个良好的体系结构和构造规则 是至关重要的。软件体系结构在很大程度上决定了系统能否满足功能、性能、 安全性、可靠性这些软件运行特性,以及各种可维护性、可适应性、可移植性、 可重用性等那些不能直接通过观察系统运行来度量的特性【l8 1 ,良好的体系结构 设计是决定软件系统成功的最重要因素。 软件体系结构是整个软件设计的开端,是整个软件系统最早的设计决策成 果。如图2 2 所示,在本系统的设计中我们引入了层次式软件体系结构的设计 思想,在硬件层的基础上,整个嵌入式系统划分为硬件抽象层、嵌入式操作系 统层和针对系统功能的应用层。 8 应用层 操作 系统层 中间层 硬件层 c 8 0 5 1 f 3 4 0 存储器2 5 a a 6 4 0 模拟电路殛电源 接口控制器及插件 图2 2 系统体系结构 根据a t p 荧光检测系统的功能和接口模块的要求,嵌入式系统的硬件电路 结构如图2 3 所示,它包括主电路和外设电路部分。主电路部分由以s i l i c o n l a b s 公司的c 8 0 51f 3 4 0 为处理芯片,外设部分由相关外围接口电路部分构成。 图2 3 硬件电路结构图 硬件抽象层的基本思想是把嵌入式系统的上层软件与具体的硬件平台隔离 开来,也就是说,在硬件抽象层中,把所有与硬件相关的代码都封装起来,并 向上提供一个虚拟的硬件平台,而平台的上两层和待开发的嵌入式应用程序就 运行在这个虚拟的硬件平台上。硬件抽象层负责直接与硬件打交道,对硬件进 行管理和控制,并为上层软件及操作系统提供所需的驱动支持。一般说来,硬 件抽象层包括以下几方面的内容:引导加载程序b o o t l o a d e r 、硬件相关的设备 驱动及它硬件相关的代码。 如图2 4 所示,系统的硬件抽象层按照功能可分为以下几个模块:键盘显 示模块、微弱荧光检测模块、测试数据存储模块和上位机通信模块等。 9 图2 4 嵌入式系统体系结构图 2 5 应用程序总体结构设计 应用程序总体结构如图2 5 所示。系统的应用程序包括下位机嵌入式应用 软件和上位机数据分析软件,以及在两者之间实现的基于r s 2 3 2 标准的通信链 接。 嵌入式系统采用i a c o s i i 嵌入式操作系统管理整个软件系统。针对实际的 应用需求对g c o s i i 进行功能扩展,开发用户自己的应用程序接口。如图2 5 所示,应用层按照功能可分为:键盘命令处理、l c d 显示、模拟信号采集、数 据存取和串口通信等任务。 上位机数据分析软件是配套检测仪开发的数据管理软件。如图2 5 所示, 上位机数据分析软件可分为:系统登陆、用户管理、数据管理、数据分析、数 据库维护以及串口通信等模块。该软件可实现原始数据的读取、查询、统计、 图表生成、参数设置等功能。 系 统 守 护 任 务 键盘管理任务lil c d 显示任务ll 用户管理 i t c o s - i i 内核 信号采集任务ii 数据存取任务 富 口 通 信 任 务 串 口 通 信 模 图2 5 应用程序总体结构图 1 0 数据库 据 库 维 护 第三章下位机嵌入式系统的软件设计 3 1 嵌入式应用系统软件总体设计 嵌入式软件开发的基本思想是:以嵌入式开发平台为基础,以任务为主要 脉络,以实时性为优先级的主要依据。本文采用两种方法开发嵌入式软件,一 个是在a p i 的基础上开发软件;二是直接在内核基础上开发软件。 开始 上 硬件系统初始化 上 操作系统初始化 上 建立任务消息邮箱和信号量 上 建立多任务 上 上上上0上上j 系 键上数数系串 统 盘下 据 据统口 守读限采存自通 护取设集取检信 任任 置 任 任任 任 务 务任务务务务 上 启动多任务 上 r 结束 、 图3 1 嵌入式应用软件的总体构架 u c o s i i 是源码公开的实时操作系统内核,这就意味着它不像其他实时操 作系统那样提供给用户的只是一些a p i 函数接口,有很多工作往往需要用户自 己完成。把c o s i i 移植到目标硬件平台上也只是系统设计工作的开始,后面 还需要针对实际的应用需求对g c o s n 进行功能扩展,开发用户自己的应用程 序接口。依据系统的功能及对硬件的依赖来划分,系统主要完成以下7 个任务: 1 ) 系统守护任务 2 ) 程序号上下限设置任务 3 ) 数据采集处理任务 4 ) 数据存取任务 5 ) 键盘读取任务 6 ) 液晶显示任务 7 ) 串行通信任务 嵌入式软件的总体架构,如图3 1 所示。在多任务调度开始前,需要对c o s i i 进行初始化,然后建立系统需要的任务。任务可以在多任务调度开始前全部 建立,也可以在多任务调度开始后由其他任务建立,但是在多任务开始前必须 至少建立一个任务,任务也可以由其他任务删除。每个任务的详细程序设计将 在3 2 节中介绍。 3 2p c i o s 在c 8 0 5 1 f 3 4 0 上的移植 移植工作就是修改o s c p u h 、o s c p u c c 、o s c p u a a s m 这几个文 件f 1 9 彩】。在说明这几个文件之前,先说明两点注意事项: ( 1 ) 可重入函数。单片机内部堆栈空间有限,c 5 1 提供一种压缩栈的方式, 当递归调用这个函数时,会导致变量被覆盖,所以在实时应用中,要用关键字 r e e n t r a n t 将函数声明成可重入函数,把每次函数调用时的局部变量单独保存起 来。但函数中不可以使用b o o l 变量,因为在l a r g e 编译模式下,k e i l 默认将 所有变量定位到外部r a m 的最高处,而m c s 5 1 系列的m c u 中只有内部 2 0 h 2 f h 的地址可以位寻址。 ( 2 ) c 5l 的关键字和“c o s i i 定义变量的矛盾。“p d a t a ”、“d a t a ”在p c o s i i 中用做一些函数的形参,但它同时又是c 51 的关键字,在编译时导致语法错 误,通过把“p d a t a ”改成“p p d a t a ,“d a t a ”改成“d d a t a 解决了此问题。 3 1 o s c p u h 文件 o sc p u h 文件主要是与处理器相关的宏定义和数据类型声明。如前面提 到的,不能使用b i t 型变量,把b o o l e a n 型定义成u n s i g n e dc h a r 型。另外8 , 6 7 m c u 数据宽度和堆栈宽度都是8 位,分别将o ss t k 和o sc p u s r 定义成u n s i g n e d c h a r 型。p c o s i i 提供了3 种处理临界代码的方法,这里使用第一种,即通过对 寄存器e a 开关中断。m c s 一5 1 系列m c u 的堆栈是从下向上递增的,定义 o s s t k g r o w t h = 0 。 3 1 2o s c p u c c 文件 o s c p u c c 文件主要是完成o s t a s k s t k l n i t 0 。在“c o s i i 中,任务是一个 1 2 无限循环,任务之间也不会互相调用,但是r t c o s i i 总是执行优先级最高的任 务,假定当前有一个更高优先级的任务进入就绪状态,为了保证原来低优先级 任务的完整性,i - t c o s i i 为每个任务建立了任务堆栈,就相当于函数调用时保 存返回地址和参数一样,用来保存当前任务的状态,保证任务切换能和函数调 用一样正确。只不过函数调用时函数堆栈的操作过程是编译器自动完成的,而 任务切换时需要模拟一个和编译器类似的任务堆栈的操作过程。实际上, i t c o s i i 的移植工作主要就是解决这个问题,o s t a s k s t k l n i t 0 完成任务栈初始 化,后面介绍的o sc p ua a s m 文件完成3 种不同条件下的任务切换操作。 栈底 o s t c b c u r 栈顶 图3 2 初始化任务栈结构 o s t a s k s t k l n i t 0 函数为o s t a s k c r e a t e 0 和o s t a s k c r e a t e e x t 0 函数所调用,用 于任务栈的初始化,初始化后的任务栈看起来像刚刚发生过一次中断并将所有 的寄存器都保存进了堆栈的情形一样。如图1 0 2 所示,它主要完成四项任务: ( 1 ) 仿真带参数p d a t a 的函数调用;( 2 ) 接着保存任务代码的首地址指针,当调用 o s s t a r t ( ) 函数启动时,为第一次运行提供任务代码的首地址指针,应用任务的 代码便从这里开始执行;( 3 ) 初始化任务栈结构,保存c p u 寄存器内容,尽管这 些寄存器内容可能在第一次运行时没有起什么作用,但仍然要设计成完整的结 构,以便于计算代码的指针;( 4 ) 返回栈顶指针给调用者,调用者又将这个指针 传递给任务控制块,并且放在任务控制块数据结构的最前面,这样就可以用汇 编语言来方便地进行读写。o s t a s k s t k l n i t 0 的函数原型为:o s s t k * o s t a s k s t k n i t ( v o i d ( 堆t a s k ) ( v o i d + p d ) ,v o i d 幸p d a t a ,o s s t k 木p t o s ,i n t l 6 uo p t ) ; o s t a s k s t k l n i t ( ) 函数返回一个栈顶指针给调用者,它需要四个参数: ( 1 ) t a s k 是任务代码的指针; ( 2 ) p d a t a 是当任务开始执行时传递给任务的参数的指针,图10 2 描述了c 编译器堆栈用堆栈传递参数的情况,其它情况本文不讨论; ( 3 ) p t o s 是分配给任务堆栈的栈顶指针: 丁雌il上 ( 4 ) o p t 用于设定o s t a s k c r e a t e e x t ( ) 的选项,指定是否允许堆栈检验,是 否将堆栈清零,是否进行浮点操作等等。当用o s t a s k c r

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论