工业乙醇发酵系统的计算机模拟毕业设计论文.doc

上传人:小小飞 文档编号:3926839 上传时间:2019-10-10 格式:DOC 页数:78 大小:2.21MB
返回 下载 相关 举报
工业乙醇发酵系统的计算机模拟毕业设计论文.doc_第1页
第1页 / 共78页
工业乙醇发酵系统的计算机模拟毕业设计论文.doc_第2页
第2页 / 共78页
工业乙醇发酵系统的计算机模拟毕业设计论文.doc_第3页
第3页 / 共78页
工业乙醇发酵系统的计算机模拟毕业设计论文.doc_第4页
第4页 / 共78页
工业乙醇发酵系统的计算机模拟毕业设计论文.doc_第5页
第5页 / 共78页
点击查看更多>>
资源描述

《工业乙醇发酵系统的计算机模拟毕业设计论文.doc》由会员分享,可在线阅读,更多相关《工业乙醇发酵系统的计算机模拟毕业设计论文.doc(78页珍藏版)》请在三一文库上搜索。

1、2009 届毕业设计(论文)届毕业设计(论文) 题 目: 工业乙醇发酵系统的计算机模拟 学 院: 专 业: 班 级: 姓 名: 指导教师: 起讫日期: 2009 年 2 月 25 日-2009 年 5 月 7 日 2009 年 6 月 本科生毕业设计(论文) I 工业乙醇发酵系统的计算机模拟 摘 要 与石油能源相比,乙醇不仅是理想的替代品,而且是十分重要的清 洁能源,广泛地用于食品、化学、医药、燃料、国防等行业。随着发酵 技术的发展以及工业生产要求的提高,人们提出了许多发酵动力学模型 来研究发酵过程和分析发酵过程,但是对于工业化生产的贡献不高。而 计算机技术的发展为进一步研究和提高乙醇工业制取

2、效率提供了可靠的 硬件支持,使进一步发展发酵动力学仿真技术成为可能。 本文在前人提出的众多发酵动力学模型的基础上,结合工业乙醇连 续发酵的实际情况,首先对经典的流加半经验半理论模型进行动态和稳 态仿真,之后为了与实际生产过程联系更加紧密,逐步将温度,气体排 放等因素考虑到模型中去,进行综合性仿真。最后再结合 GUI 技术,以 动力学模型为核心,以人机界面友好为目标,制作乙醇连续发酵仿真软 件,将脚本语言编程技术和模块化仿真技术结合起来,建立起工业乙醇 发酵的仿真平台。 关键词关键词:乙醇 发酵 动力学模型 仿真 模块化 Abstract II TheThe computercomputer s

3、upportedsupported simulationsimulation forfor industrialindustrial ethanolethanol fermentationfermentation AbstractAbstract Compared to petrol, ethanol is an ideal substitute. Ethanol is clean so it can be used widely in food industry, chemistry, medicine, fuel industry and even national defense. Wi

4、th the development of fermentation technology and the enhancement of industry demand, people have rendered many kinetic models to investigate and analyze the process of fermentation, however, the classic fermentation sole does little to promote the industry. As computer technology develops, the accu

5、racy and speed can be ensured which make it possible to further investigate and promote the producing rate of ethanol in industry. On the base of mathematical models rendered, taking the practical factors of the industrial ethanol continuous fermentation into consideration, temperature and gas param

6、eters are added into them, then the simulation could be carried out. Finally, combining the GUI technique, targeting the friendly interface between people and computer, the continuous fermentation simulation soft can be made. It finds a perfect balance between programs and modularization so that its

7、 more convenient and reliable. 南京工业大学本科生毕业设计(论文) III Keyword:Keyword: ethanol; fermentation; kinetic model; simulation; modularization 目 录 IV 目 录 摘 要I ABSTRACTII 第一章 绪 论1 1.1 引言1 1.2 工业乙醇发酵方法与工艺2 1.2.1 工业乙醇发酵方法 2 1.2.2 工业发酵流程简介 3 1.2.3 乙醇发酵工艺 4 1.3 本文主要内容与目标5 第二章 乙醇连续发酵模型与初步仿真6 2.1 经验模型与半经验模型6 2.2 连

8、续发酵动力学模型及其计算机求解方法9 2.3 乙醇连续发酵仿真的前期准备.12 2.4 乙醇和水的混合问题.14 2.5 乙醇连续发酵的稳态仿真和动态仿真.16 2.6 小结.19 第三章 乙醇连续发酵模型的改进及其模块化动态仿真20 3.1 SIMULINK的作用20 3.2 乙醇连续发酵模型的改进.21 3.2.1 考虑温度因素的影响 21 3.2.2 产生气体对物料流量的影响 21 2 CO 3.2.3 实际生产过程中的扰动 .22 南京工业大学本科生毕业设计(论文) V 3.3 乙醇连续发酵模块模型的建立与仿真.22 3.3.1 单罐仿真 .22 3.3.2 理想情况下系统仿真 .23

9、 3.3.3 考虑温度因素的系统仿真 .24 3.3.4 产生气体对物料流量影响的仿真 25 2 CO 3.3.5 考虑无水乙醇与水互溶时体积变化 .26 3.3.6 考虑实际存在的扰动 .27 3.4 小结.28 第四章 乙醇连续发酵改进模型的稳态仿真30 4.1 考虑温度因素的稳态仿真.30 4.2 考虑气体排放对流量的影响30 2 CO 4.3 将温度因素与气体排放结合.32 4.4 小结.33 第五章 乙醇连续发酵仿真软件设计与制作.34 5.1 GUI 的使用 .34 5.2 乙醇连续发酵稳态仿真软件界面.38 5.3 SIMULINK动态仿真控制器制作41 5.4 综合软件的制作.

10、47 5.5 小结.50 第六章 结论和展望52 6.1 结论.52 6.2 展望.52 参考文献53 目 录 IV 致 谢54 南京工业大学本科生毕业设计(论文) 1 第一章 绪 论 1.11.1 引言引言 2006 年中国原油消费量 3.23 亿吨,国内生产原油 1.83 亿吨,净 进口原油 1.39 亿吨,加上净进口轻油数量,石油对外依存度达 45。 如果继续下去,估计到 2020 年,国内自产石油 2.0 亿吨,石油缺口将 达到 2.5 亿吨,对外依存度将上升到 55。进入 21 世纪以来,我国经 济和社会可持续发展所面临的能源、环境、农业等问题将更加突出. 国民经济和社会发展第十个五

11、年计划纲要中明确指出,要通过加工 转化、扩大出口等多种方式,解决粮食等农产品阶段性供过于求问题;要 开发燃料乙醇等石油替代产品,采取措施节约石油消耗.借鉴国外经验, 推广使用乙醇汽油便是国家着力缓解能源、农业、环境问题的一项战略 性举措. 随着石油资源的枯竭,乙醇成为十分理想的替代品。与石油汽油等 燃料资源相比,作为替代燃料,乙醇有如下的优点: 1.乙醇燃料过程中所排放的二氧化碳和含硫气体均低于汽油燃烧所 产生的对应排放物,燃烧过程比普通汽油更安全,一氧化碳排放量可降 低 30%左右。 2.乙醇是燃油氧化处理的增氧剂,是汽油增加氧,燃烧更充分,达 到节能和环保目的。而且,具有极好的抗爆性能,可

12、有效提高汽油的抗 暴指数。 3.因乙醇汽油的燃烧特性,能有效地消除火花塞、燃烧室、等部位 的积炭的形成,优化工况行为,避免了因积炭形成而引起的故障,延长 部件使用寿命。 乙醇不仅在工业生产和应用中有很重要的地位,在其它各个行业中 第一章 绪论 2 也发挥了相当重要的作用:乙醇还是十分重要的清洁能源,广泛地用于 食品、化学、医药、燃料、国防等行业。乙醇作为可再生清洁能源不仅 可以替代四乙基铅作汽油的防爆剂,还可以制造汽油醇做汽车燃料,给 汽车工业铺下了节能的发展基础。 以上各点都符合我国当前可持续发展的基本国情,在粮食问题得到 解决和保障的情况下,大力发展乙醇工业对我国来说是十分必要的事情。 专

13、家认为,从目前中国燃料酒精发展规模,能源需求状况以及新原料的 探索方面看,今后中国燃料酒精产业发展潜力巨大,空间广阔。 这一巨大的需求促使人们去寻找提高乙醇工业产率的途径,使人们 着手于发酵工程的研究,从微生物学、发酵研究的发展,使微生物反应 过程的种类和规模不断地扩大,其应用也深入到多个工业领域,然而由 于反应涉及活细胞的参与,其菌体生长及产物生成等机理复杂多变,目 前尚难为人们了解和把握,更难以进行统一的描述。人们一般是通过实 验的方法来寻求微生物的生长规律,通过数值分析和拟合了解发酵过程 的规律。这样的做法周期性长,需要消耗的资源多,且无法在短时间内 对工业流程中出现的问题产生及时的应对

14、方案。随着计算机技术的发展, 其作为分析和研究系统运行行为、揭示系统动态过程和运动规律的一种 重要手段和方法, 随着系统科学研究的深入、控制理论、计算技术、计 算机科学与技术的发展而形成的一门新兴学科。近年来, 随着信息处理 技术的突飞猛进, 仿真技术得到迅速发展。 “仿真是一种基于模型的活 动” , 它涉及多学科、多领域的知识和经验。成功进行仿真研究的关 键是有机、协调地组织实施仿真全生命周期的各类活动。这里的“各类 活动”, 就是“系统建模” 、 “仿真建模” 、 “仿真实验”, 而联系这些活 动的要素是“系统” 、 “模型” 、 “计算机” 。其中:系统是研究的对象, 模 南京工业大学本

15、科生毕业设计(论文) 3 型是系统的抽象, 仿真是通过对模型的实验来达到研究的目的。 图 1-1 系统、模型与计算机关系 本文在前人总结的半经验模型和经验模型上,利用 Matlab 强大的 数学计算功能和界面设计功能进行发酵过程的建模与仿真软件的设计, 并作一定的拓展推理,建立更全面的模型,并且通过计算机软件进行过 程模拟,最后制作成乙醇发酵过程模拟软件,使仿真的软件中,既具有 简单使用的界面,又具有数据保存和图形绘制功能。 1.21.2 工业乙醇发酵方法与工艺工业乙醇发酵方法与工艺 1.2.1 工业乙醇发酵方法 发酵法由于其高效、绿色无污染的特点被广泛应用。 根据发酵料液注入发酵罐的方式不同

16、,可以将酒精发酵的方式分为 间歇式、半连续型、连续型 3 种。 (1)间歇式发酵方法 间歇发酵方法是指全部发酵过程始终在一个发酵罐中进行。由于发 酵罐容量和工艺操作不同,在间歇工艺中,又可分为一次加满法、分次 加满法、连续添加法等方法。 (2)半连续发酵法 半连续发酵法是指在主发酵阶段采用连续发酵,而后发酵则采用间 歇发酵的方式。在半连续发酵中,由于料液的流加方式不同,发酵罐中 有些是间歇发酵有些是连续发酵。 第一章 绪论 4 (3)连续发酵 淀粉原料生产酒精的连续发酵,在国内外早有研究,由于杂菌污染 问题没有很好的解决,为得到普及和推广。近年来由于发酵理论研究有 所发展,尤其在淀粉质原料和产

17、酒精的过程中采用了连续蒸煮、连续糖 化和液体曲新工艺,给连续发酵创造了条件。不断发展的连续发酵工艺 是淀粉质原料连续发酵法生产酒精工艺日趋完善,操作更加简便,取得 了更显著的成绩。清夜发酵是典型的连续发酵,该工艺要求糖化液中不 含悬浮物。连续操作可以降低发酵的平均时间,提高生产能力,不阻塞 精馏塔、减少环境污染。因此得以大力发展。 1.2.2 工业发酵流程简介 以某化工原料有限公司的乙醇连续发酵系统为背景,其生产系统简 图如下: A BCD EFG 3 2 1 4 579 68 10 1112 H 13 15 14 16 图 1-2 发酵流程图 整个发酵流程的主要设备包括 1 个预发酵罐,6

18、个发酵罐,离心分 离机等。涉及的进出料流股一共有 16 个。发酵设备与流股之间的关系 可以用简单的流程图表示出来,图 1 是整个发酵过程的流程图,其中, 南京工业大学本科生毕业设计(论文) 5 A 为预发酵罐(165),进料 1,2,3 分别为干法糖液、营养盐、酵母; 3 m B 为第一级发酵罐(600),进料 4 为 A 的出料,进料 5 为干法糖液, 3 m 16 为循环回来的酵母;C 为第二级发酵罐(600),进料 6 为 B 的出料, 3 m 进料 7 为干法糖液;D 为第三级发酵罐(600),进料 8 为 C 的出料, 3 m 进料 9 为干法糖液;E 为第四级发酵罐(600),进料

19、 10 为 D 的出料; 3 m F 为第五级发酵罐(500),进料 11 为 E 的出料;G 为第六级发酵罐 3 m (500 3 m ),进进料 12 为 F 的出料;H 为离心分离机,进料 13 为 G 的出 料,出料 15 为产品,含 1112%(V/V)的乙醇,送入蒸馏装置分离,出料 14 为废酵母,其中一部分循环回去。发酵温度要求控制在 3133, 前三个发酵罐需要补充液料,发酵过程中补充菌种。 1.2.3 乙醇发酵工艺 传统的酒精生产主要以糖蜜、薯类、谷物为原料发酵而成。近年来,随 着人口增长和经济的发展以及可利用耕地面积的减少使得酒精生产成本 日趋增高,利用丰富、廉价的玉米秸秆

20、为原料生产酒精已成为必然趋势。 我国是一个农业大国,各种纤维素原料资源非常丰富,仅玉米秸秆年产量 大约 2 亿吨。目前,玉米秸秆除了少部分被利用外,大部分以堆积、焚烧 等形式直接倾入环境,极大地污染了环境,也是一种资源浪费。如果将玉 米秸秆经过预处理后水解,其所含的纤维素和半纤维素可分解成葡萄糖, 经发酵可转化为酒精,转热效率可达 30%以上。这样不但缓解人类所面 临的食物短缺,环境污染、资源危机等一系列问题,而且还能实现人类的 可持续发展,因而近年来玉米秸秆成为生物能源领域的研究热点。 玉米秸秆主要由植物细胞壁组成,基本成分为纤维素、半纤维素和 木质素等。木质素将纤维素和半纤维素层层包围。纤

21、维素是一种直链多 糖,多个分子平行排列成丝状不溶性微小纤维,半纤维素主要由木糖、少 第一章 绪论 4 量阿拉伯糖、半乳糖、甘露糖组成,木质素是以苯丙烷及衍生物为基本 单位组成的高分子芳香族化合物。其中,木质素是一种燃料,半纤维素可 水解为五碳糖,而纤维素水解为六碳糖比较困难。由于玉米秸秆结构复 杂,不仅纤维素、半纤维素被木质素包裹,而且半纤维素部分共价和木质 素结合,同时纤维素具有高度有序晶体结构。因此必须经过预处理,使得 纤维素、半纤维素、木质素分离开,切断它们的氢键,破坏晶体结构,降 低聚合度。常见预处理方法有物理法、化学法、物理化学法和微生物法 等。 改化工厂的生产线采用的是玉米清液发酵

22、工艺,将玉米干式粉碎, 使用清液生产乙醇。其流程图如下: 粉浆配制 液化、糖化 酒精发酵 酒精精馏 离心沉降 多效蒸发 分子筛脱水 燃料酒精 稀糟液 全酒糟 粉浆 糖化醪 二氧化碳 发酵醪变性处理 干燥处理 DDGS 湿糟 浓缩液 图 1-3 玉米清液发酵工艺 本文采取的是一个预发酵罐和六个发酵罐串联的玉米清液发酵流程, 过程中有料液补充,且有循环利用系统将产品中的有用料液回收并且补 充到进料中,发酵温度各罐大致相同,基本在 3133。 1.31.3 本文主要内容与目标本文主要内容与目标 在介绍工业生产乙醇的流程和工艺之后,本文进一步深入研究乙醇 南京工业大学本科生毕业设计(论文) 7 发酵动

23、力学知识,在前人研究总结的半经验半理论模型的基础上进行计 算机仿真(包括稳态仿真和动态仿真) ,在得到较好的仿真结果之后, 结合实际生产环境和要求,将实际影响因素添加到动力学模型中去,从 而建立起更加完善的仿真模型,运用 Matlab/Simulink 软件进行仿真, 将仿真结果与工业标准相对比。在经过检验之后,将已经建立的动力学 模型作为基础,着手乙醇连续发酵软件的开发,以友好的界面,简单的 操作和可靠有效的仿真能力为目标,设计并制作出乙醇连续发酵的的实 验用软件,为获得实验数据,研究发酵特性以及为寻找发酵控制最优控 制等后续研究提供基础。 第二章 乙醇连续发酵模型与初步仿真 8 第二章 乙

24、醇连续发酵模型与初步仿真 2.12.1 经验模型与半经验模型经验模型与半经验模型 Monod 方程: max s S KS (2-1) (2-1)描述了在不存在对菌体细胞生长产生抑制性因素的菌体比生长率 与基质浓度的关系, Monod 方程是典型的无抑制细胞均衡生长模型,是 细胞动力学的奠基方程。而在发酵生产酒精的过程中,酒精浓度,底物浓 度或者菌体自身浓度过高时,会对菌体生长产生抑制作用。为菌体比 生长速率, 1 h ; max 为最大菌体比生长速率, 1 h ;S 为底物质量浓度,g/L; s K 为底物抑制常数,g/L。 人们从经典的 Monod 方程出发,逐步提出了许多发酵动力学模型:

25、 max (1/) pI xI spI K S XK KS KP (2-2) maxexp( ) p K P (2-3) max 22 / p ssIppI K S KSSKKPPK (2-4) 等。描述发酵从开始到停滞阶段的行为。各项抑制常数的引入使模型更 符合实际,但是这些模型的模拟都是半理论半经验的。对不同的发酵过 程,方程形式以及抑制常数的选取不一样。 为了建立乙醇连续发酵动力学方程,首先要明确在静止情况下(没 南京工业大学本科生毕业设计(论文) 9 有补充液和流进流出)各种物料之间的关系:1.葡萄糖液在酵母的作用 下分解产生乙醇;2.酵母细胞本身还要吸收消化葡萄糖来促进自身的生 长。

26、上述三者之间的关系可以用三个微分方程来描述(虽然可以用比死 亡率表示菌体的衰败,但是发酵过程中比生长率远远大于比死亡率,所 以比死亡率本文不作考虑): 酵母菌体: dx x dt (2-5) 乙醇: dp x dt (2-6) 葡萄糖: () ds x dt (2-7) x表示酵母菌体的浓度,p表示乙醇的浓度,s表示葡萄糖的浓度, 表示菌体比生长率(单位时间单位体积浓度变化率) ,表示乙醇比生 产率,表示由菌体消化掉葡萄糖的消耗率,表示分解产生乙醇的葡 萄糖的消耗率。然后引入得率的概念: /x s Y 菌体相对于葡萄糖的得率,即葡萄糖消耗后产生菌体的比率。 /p s Y 乙醇相对于葡萄糖的得率

27、,即葡萄糖分解产生乙醇的比率。 从得率的意义可知: /x s Y = / , /p s Y = / ,代入到(7)可以得到: / () x sp s ds x dtYY (2-8) 这个模型描述了静止的发酵反应中浓度变化情况,实际工业生产往 往是连续发酵,这样的发酵流程不仅创造了酵母生长的合适环境,也提 供了发酵稳定的条件,提高发酵能力和生产效率。生产连续化,设备利 第二章 乙醇连续发酵模型与初步仿真 10 用率高,一般采取的是多罐串联式连续发酵。 (本文对 6 个串联罐进行 仿真) 。 为了适应工业生产流程,上述模型也应该显现出流动性。 首先考虑理想情况,稳定发酵情况下,由单个发酵罐子中物料

28、守恒 可得出两个两个恒等关系: 1对每个发酵罐而言,发酵液流入量=流出量; 2对每种物质而言,其质量变化=流入质量+反应生成(消耗)质量-流 出质量。 in F , out F 分别表示流入量、流出量,V 表示发酵罐体积, 0 x 是流如发 酵罐的物质浓度(此处是菌体浓度): inout FF (2-9) 0inout dx VF xxVF V dt (2-10) 第二个式子仅以酵母菌为例,其余类似。 因为 in F = out F ,令二者均为F,代入(2-10)并整理得: 0 () dxF xxx dtV (2-11) 此处即称为稀释率,表示为D,那么由此可将单个罐子中的连续发酵 F V

29、动力学模型表示如下: 0 () dx xD xx dt (2-12) 0 () dp xD pp dt (2-13) 0 / ()() x sp s ds xD pp dtYY (2-14) 因为实际生产过程中基质浓度较高,需要考虑底物和产物对细胞生长的 南京工业大学本科生毕业设计(论文) 11 抑制作用。,表达方式众多,比如 max 22 / p ssIppI K S KSSKKPPK (2-15) 同理写出乙醇比产率的表达式: max 22 / pp spspIppppI K S KSSKKPPK (2-16) 上述动力学方程组中各参数采吕欣得出的数据: 表 2-1 抑制参数等各参数 =

30、0.1604 () /x s Y 1 kg kg g= 0.4986 () /p s Y 1 kg kg g max = 0.1132 () 1 h max = 0.9982 () 1 h = 101.276 () s K 3 kg mg=9.916 () sp K 3 kg mg = 28.779 () p K 3 kg mg= 660.54 () pp K 3 kg mg = 106500 () sI K 3 kg mg= 296540 () spI K 3 kg mg =5968 () PI K 3 kg mg=16.658 () PPI K 3 kg mg /x s Y 是菌体相对于葡

31、萄糖的得率; /p s Y 是乙醇相对于葡萄糖的得率; max 是最大比生长率; max 是最大乙醇比生产率; -Monod 常数(菌体饱和时底物浓度) ; s K 3 kg mg sp K -基于底物的乙醇饱和常数(乙醇饱和时底物的浓度), ; 3 kg mg p K -乙醇饱和常数(菌体饱和时乙醇的浓度) , ; 3 kg mg pp K -基于产物的乙醇饱和常数(乙醇饱和时的浓度) , ; 3 kg mg sI K -底物抑制常数(抑制作用使细胞停止生长时底物的浓度), 3 kg mg 第二章 乙醇连续发酵模型与初步仿真 12 spI K -基于底物的乙醇抑制常数(抑制作用使乙醇停止生产

32、时的底物浓度), 3 kg mg pI K -乙醇抑制常数(抑制作用使细胞停止生长时乙醇的浓度), 3 kg mg ppI K -基于产物乙醇的乙醇抑制常数(抑制作用使乙醇停产时乙醇的浓度), 3 kg mg 2.22.2 连续发酵动力学模型及其计算机连续发酵动力学模型及其计算机求解方法求解方法 乙醇连续发酵的仿真过程主要是对上述非结构型动力学方程的求解, 并通过图象表达出来。鉴于 Matlab/Simulink 强大的数值计算能力和图 形绘制能里,选用该软件对乙醇连续发酵过程进行仿真。 2.1 中已经充分讨论了单个发酵罐中的反应原理,从反应机理来说是葡 萄糖在酵母作用下转化为乙醇,而且酵母还

33、通过吸收葡萄糖生长。而从 数学本质上来说,就是对上述(2-12)-(2-16)求数值解。该问题涉 及到用常微分方程系统 ODE 的求解。MATLAB 使用龙格- 库塔- 芬尔格 (Runge- Kutta- Fehlberg)等方法来解 ODE 问题。相关的函数有 ode45、ode23、ode113、ode15s、ode23s、ode23t、ode23tb 等等。 格式T,Y = solver(odefun,tspan,y0,options,p1,p2) 参数说明:solver 为命令 ode45、ode23、ode113、ode15s、ode23s、ode23t、ode23tb 之一。 O

34、defun 为显式常微分方程 y=f(t,y), 或为包含一混合矩阵的方程 M(t,y)*y=f(t,y)。命令 ode23 只能求解常数混合矩阵的问题; 命令 ode23t 与 ode15s 可以求解奇异矩阵的问题。Tspan 积分区间(即求解 区间)的向量 tspan=t0,tf。要获得问题在其他指定时间点 t0,t1,t2,上的解, 则令 tspan=t0,t1,t2,tf(要求是单调的)。 南京工业大学本科生毕业设计(论文) 13 Y0 包含初始条件的向量。Options 用命令 odeset 设置的可选积分参 数。P1,p2, 传递给函数 odefun 的可选参数。 T,Y = od

35、e (rigid,tspan,init,options); 是微分方程子函数的句柄符号,给 ode 函数提供一个地址入口,tspan 是求解的时间区间,比如0 12,init 是微分方程的初始值,比如0 1 0.option 是具体的误差等控制选项,此处缺省,使用默认值。T 是 对时间区间根据步长分割的时刻点,Y 是对应时刻点的各分量的数值。 本文选用 ode45 函数来求解,综合整个动力学模型,对单罐的描述 为子函数 func(t,n,V): t:时刻(h); n:各物料输入浓度(kg/ 3 m ); V:发酵罐的体积( 3 m ); Vy:流入该发酵罐的料液流量(kg/h); u=umax

36、*n(3)/(Ks+n(3)+n(3)2/Ksi)*Kp/(Kp+n(2)+n(2)2/Kpi); v=vmax*n(3)/(Kps+n(3)+n(3)2/Kpsi)*Kpp/(Kpp+n(2)+n(2)2/Kppi); D=Vy/V; f(1)=u*n(1)+D*(x0-n(1); f(2)=v*n(1)+D*(p0-n(2); f(3)=-(u/Yxs+v/Yps)*n(1)+D*(s0-n(3); 程序中的各个参数基本采用了其本身表征符号,常数采用上表的数 值,f(1)-f(3)代表的是三种物料的微分量,通过叠代求得。n(1)-n(3) 是不同于原本的 x,p,s 的,主要是为了发挥 M

37、atlab 强大的向量计算能 力,以便在调用该子函数的时候输入简单明了,操作方便。调用该子函 数进行求解的语句是: 第二章 乙醇连续发酵模型与初步仿真 14 T, F=ode45 (func,0 0.5 time0,x0 p0 s0); 用 Matlab 自带的 ode45 函数求解很方便,但是同时也出现一个问 题,ode45 是变步长的,在震荡剧烈的地方取点密,步长小,在比较平 缓的地方取点稀疏,步长大。这对于实际生产过程控制来说很难做到随 时改变数据采样时间。龙格-库塔(Runge-Kutta)方法是一种在工程上应 用广泛的高精度单步算法。由于此算法精度高,采取措施对误差进行抑 制,所以其

38、实现原理也较复杂。该算法是构建在数学支持的基础之上的。 龙格库塔方法的理论基础来源于泰勒公式和使用斜率近似表达微分。一 阶常微分方程可以写作:y=f(x,y),使用差分概念。 (Yn+1-Yn)/h= f(Xn,Yn)推出(近似等于,极限为 Yn) Yn+1=Yn+h*f(Xn,Yn) 另外根据微分中值定理,存在 0callback 回调函数,就会弹出这个 界面的 M 文件,并且光标定位在该按钮的子函数开始处,写好点击该按 钮时触发的语句: (4)保存文件,单击 fig 文件窗口上的三角执行或者运行其 M 文件运行 南京工业大学本科生毕业设计(论文) 49 该程序: 图 5-5 运行设计的界面

39、 第五章 乙醇连续发酵仿真软件的设计和制作 50 图 5-6 按下按钮之后 通过该例子简单描述下制作 GUI 的过程。 5.25.2 乙醇连续发酵稳态仿真软件界面乙醇连续发酵稳态仿真软件界面 需求分析: 该软件界面的制作是为了给实验室环境提供一种可靠的数据获取手 段和决策安排方法,综合了之前讨论的所有因素在内。在给定各个环节 具体数据的情况下,能够得到与实际生产中相贴近的生产结果数值。 功能安排: 各个进料口的流量在合理的范围内可以调节; 各个发酵罐的发酵温度可以调节; 发酵过程的曲线图的可视化; 发酵过程的详细数据和结果的显示; 发酵过程的详细数据和结果可以保存为自定义文档。 设计过程: 基

40、本的设计方法 6.1 中已经介绍过了,根据上述功能设计软件界面 如下: 南京工业大学本科生毕业设计(论文) 51 图 5-7 稳态仿真软件界面 上方中间是软件名称,左方在运行仿真后会把各个罐子的物料浓度曲线 显示出来。右边最上方是各个进料口浓度的设置,输入框下面是输入值 的许可范围。右边中部是各个发酵罐发酵温度的输入值。再靠下是发酵 数据的显示,可以控制只显示最终浓度或者全程详细浓度的显示。将显 示的数据通过保存按钮保存为 xls 文件,用于科学研究或者多次仿真实 验的对比等。已保存的文件也可以通过清除按钮删除掉。右下角的按钮 是启动仿真或者退出该界面的功能,右边显示的是主要发酵的时间长度。

41、具体步骤: 标题,将左边 text 标签拉动到界面窗口,双击后在属性窗口中修改 string 和 font size 属性即可。 流量值的输入,标签是跟 1 一样的处理方式。要特别注意数值格式的转 换问题,因为在界面上显示的是字符串,而不是真正意义上的数,所以 第五章 乙醇连续发酵仿真软件的设计和制作 52 要用 str2num 函数处理。另外将数据从输入框取到内存的函数是 get, 此处要取出六个数据,取出数据是在仿真开始之后进行的,所以要写在 开始仿真按钮的回调函数只中: lowy=str2num(get(handles.edit1,string); %预发酵罐的 流速 flow0=str

42、2num(get(handles.edit2,string); %SPL0 的 流速 flow1=str2num(get(handles.edit3,string); %SPL1 的流速 flow2=str2num(get(handles.edit4,string); %SPL2 的 流速 flow3=str2num(get(handles.edit5,string); %SPL3 的流速 flowr=str2num(get(handles.edit6,string); %RCY 的 流速 为了防止因经验不足而产生的输入数据不在允许范围内而产生的结果失 真,应当对操作人员有个提醒,所以在输入超

43、出范围时,将弹出错误对 话框,提醒修改的数据: if flow315 errordlg(请输入符合实际的 SPL3 流量,Error); end if flow230 errordlg(请输入符合实际的 SPL2 流量,Error); end if flow190 南京工业大学本科生毕业设计(论文) 53 errordlg(请输入符合实际的 SPL1 流量,Error); end if flow09 errordlg(请输入符合实际的 SPL0 流量,Error); end if flowy1.1 errordlg(请输入符合实际的 1 号口流量,Error); end if flowr8 e

44、rrordlg(请输入符合实际的 RCY 流量,Error); end 温度的输入功能实现方法同流量的输入方法; 过程数据的显示用到不是显示框,而选用适合矩阵显示的 listbox , 因其对超出显示范围的数据可以自动实现拖动条功能,以便可以观察到 数据的全貌。具体的发酵过程计算在前面几章已经讨论过,这里把那些 数据通过 set 函数把内存中的数据送到 listbox 中显示出来,是显示具 体数据还是最终数据需要 checkbox 的状态来确定: flag=get(handles.checkbox1,value); %检测详细显示是 不是被选中了 if flag=0 set(handles.l

45、istbox1,string,num2str(results); else set(handles.listbox1,string,num2str(dresults); end 第五章 乙醇连续发酵仿真软件的设计和制作 54 最终流出的产品浓度指标则通过 edit 显示: set(handles.edit8,string,num2str(x0); set(handles.edit9,string,num2str(p0/7.9); set(handles.edit10,string,num2str(s0); 数据保存功能:将 listbox 中的数据写到 xls 文件中去,便于观察和使 用,对于

46、进行数据时的导入也是十分方便的。 data=get(handles.listbox1,string); xlswrite(dataT.xls,str2num(data); msgbox(已经保存为 dataT.xls 文件); 而删除功能也是十分简便: delete(dataT.xls); msgbox(已经清除 dataT.xls 文件); 发酵过程曲线的绘制: 需要先选中一个坐标轴,再调用 plot 函数绘制计算出来的各物料浓度 值。具体用法跟 5.1 的例子一样。 发酵的主体程序与前几章讨论的过程大致一致,写入完整的 callback 函数后运行,输入参数,进行仿真: 南京工业大学本科生

47、毕业设计(论文) 55 图 5-8 稳态仿真软件运行界面 5.35.3 SimulinkSimulink 动态仿真控制器制作动态仿真控制器制作 动态仿真是在第四章讨论的。为了将模块化仿真功能综合到仿真软 件中去,需要设计一个简单的控制器来控制模型的打开,运行,和关闭 动作。鉴于 Matlab/Simulink 以及 GUI 之间强大的协调工作能力,该功 能是可以实现的: 第五章 乙醇连续发酵仿真软件的设计和制作 56 图 5-9 simulink 控制界面 首先设计和控制版面,根据需要修改好各个控件的属性和名称。之 后对三个控制按钮分别编写其 callback 函数就可以了。 打开模型的回调函

48、数:open_system(integrated_model); 关闭模型的回调函数:close_system(integrated_model); 注意此处 open_system 函数的参数是需要打开或关闭的 mdl 文件的 名称,而不是.fig 文件的名称。 回主界面就是关闭改图形界面。主要是为了各个界面之间的衔接功 能。 这个控制功能实现十分简单。困难在于,原来的动态仿真系统中的 各个参数是在 M 文件中书写的,运行 mdl 文件之前需要先载入全局参数 到内存,再启动仿真,然后再通过运行画图程序把结果体现出来。而现 在是做成操作界面,如果再这个运行程序太过烦琐,用户友好化就体现 不出了。 为了解决这个问题,首先想到的是制作一个嵌入式的模块,把初始 化代码放到该模块里面,使它在模型运行时第一时间把参数载入。但是 尝试了 Embedded Matlab Fcn 等模块后,没有成功,嵌入式模块支持的 语句有限,有些基本的函数或字符在其中不能应用,所以

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1