模块化编程的六大原则

1. 单一职责原则
类的职能要单一:
遵循单一职责原则。分别建立两个类T1、T2,使T1完成职责P1功能,T2完成职责P2功能。这样,当修改类T1时,不会使职责P2发生故障风险;同理,当修改T2时,也不会使职责P1发生故障风险
2. 里氏替换原则:
子类对象可以替换父类对象。子类不要增加父类没有的约束。这样会导致父类有些方法不能用。从而不能真正的实现 : 子类对象可以替换父类对象,如果子类重写了父类已实现的方法,那么子类调用的父类的方法就完全没用了,从而不是真正意义上的继承。
3. 依赖倒置原则:
高层模块不应该依赖低层模块,二者都应该依赖其抽象;抽象不应该依赖细节;细节应该依赖抽象。
4.接口隔离原则:
在设计接口的时候,给每一个接口设计不多不少的方法,因为,如果设计的方法多了,当某个类通过接口来依赖某个类的时候,被依赖的那个类要实现的方法太多了,会造成那个类中大量的代码冗余,不可过少的原因是,接口太多,会让设计变复杂,且不便于管理。
5.迪米特原则:
低耦合,高内聚,即类A与类B,如果没必要依赖吗,则代码尽量不要耦合,如果这两个类要产生通信,则创建一个中间的通信类C去与这两个类进行交互。但是这样的通信类要适量。
6.开闭原则:
对实现封闭,对扩展开放。即当一个一个方法需要增加其他的功能,或者代码需要重构的时候,要扩展软件的行为,尽量不要去修改已有的代码。用抽象构建框架,方法的实现来扩展细节。

  • 2
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
第一章 C程序设计筑基..........................................................................................................1 1.1 二进制基础.................................................................................................................1 1.1.1 为什么采用二进制.........................................................................................1 1.1.2 二进制、十六进制和八进制...........................................................................2 1.1.3 原码、反码与补码...........................................................................................4 1.1.4 模216原则.......................................................................................................7 1.1.5 浮点小数的二进制表示.................................................................................8 1.2 程序员眼中的计算机.................................................................................................9 1.2.1 数据在计算机中的存储形式.........................................................................9 1.2.2 计算机的运行方式与特点...........................................................................11 1.3 程序设计的方法......................................................................................................13 1.3.1 程序设计的两大要素...........................................................................13 1.3.2 算法的描述.......................................................................................15 1.3.3 流程的跟踪执行...........................................................................18 1.4 C程序初步......................................................................................................19 1.4.1 计算机语言分类...........................................................................19 1.4.2 C语言简史及特点.................................................................................20 1.4.3 C程序示例及组成...........................................................................21 1.5 C程序解题分析.................................................................................................25 1.5.1 详解判断素数程序.......................................................................................25 1.5.2 综合示例......................................................................................................32 1.5.3 C程序书写风格...........................................................................................34 1.6 编程学习方法总结...................................................................................................36 第二章 上机指导与解题分析..............................................................................................39 2.1 上机编程环境...........................................................................................................39 2.2 Turbo C集成开发环境............................................................................….............40 2.2.1 Turbo C集成开发环境介绍.........................................................................40 2.2.2 文本编辑..................................................................….............................42 2.2.3 编译和连接..........................................….....................................…............44 2.2.4 程序运行与调试..................................….....................................…............46 2.2.5 Turbo C环境设置..............................….....................................…............50 2.3 常见的变量类型、运算符及输入出格式.....…........................................…............50 2.4 程序举例.............................................…...................………..........….....…............52 2.5 Turbo C上机实验...............................….....…..……............…....….......…............59 第三章 基本数据类型、运算符与输入输出函数...….....…..…….…....…......…............67 3.1 基本数据类型...….....…..……………….....…....…..…....….......….......………....67 3.2 常量……………………..……………….............…...…..…....…….......………....67 3.2.1 整型常量…….…….……………........…....…..….........….......………....67 3.2.2 实型常量…..………………………….............…..….....….......………....68 3.2.3 字符常量…..…………………………….............…....….....…....…...…....68 3.2.4 字符串常量…..………………………….............…....….....…....…...…....69 3.2.5 符号常量…..…………………………….............…....….....…....…...…....69 3.3 变量…..…………………………………...........…………....….....….......……...70 3.3.1 C标识符……………………...........…………..........….......…….……...70 3.3.2 整型变量………………….....…......…………..........….......…………...70 3.3.3 实型变量….....……………………......…………..........….......………...71 3.3.4 字符型变量………………………………………......….....…………….71 3.3.5 变量的初始化………………...…......…………..........….......…………...72 3.4 C语言的运算符和表达式……………...........…………....…......….......……....72 3.4.1 算术运算符和算术表达式..………………….…....….....….......……...73 3.4.2 赋值运算符和赋值表达式………..……..……….…....….....…...……....74 3.4.3 关系运算符和关系表达式………….........…….…....….....….....……….74 3.4.4 逻辑运算符和逻辑表达式………....…...……….…....….....…...……....75 3.4.5 条件运算符和条件表达式………...........……….…....….....…...……....76 3.4.6 逗号运算符和逗号表达式………...........……….…....….....…...……....78 3.4.7 指针运算符………....………...……........……….…....….....…...……....78 3.4.8 sizeof运算符…………..………….........……….…....….....…...……....79 3.4.9 不同类型数据之间的转换………...........……….…....….....…...……....79 3.4.10 C运算符优先级和结合性………….......……….…....….....…...……....80 3.5 输入输出函数……………………………........…………....…......….......……....80 3.5.1 格式化输入输出函数..……………………….…....….....….......……...81 3.5.2 字符输入输出函数………..……………..……….…....….....…...……....84 第四章 语句与程序控制结构……………………………..........……….….........……....89 4.1 语句总述…………………………………….......…….…......….....….....….....…89 4.1.1 说明语句、表达式语句和空语句……………..........…….........………....89 4.1.2 控制语句………………………….........………....….....….....………....89 4.1.3 复合语句……….….……………….......……………....….....….......…....89 4.2 顺序结构…………………………………………......………......….......………..90 4.3 选择结构………….…………………………...........………....….....….......…....91 4.3.1 if语句…………….………….…..........…….…….....….......………..91 4.3.2 switch语句…………...........……………….……....….....….......………..95 4.4 循环结构…………………………………….......…….…......….....….....….....…100 4.4.1 while语句……………………………………..........…...........………....100 4.4.2 do-while语句…………………….........………....….....….....………....102 4.4.3 for语句……….….………………........……………....….....….......…....103 4.4.4 break语句……….….……………........……………....….....….......…....105 4.4.5 continue语句……….….…......……....……………....….....….......…....107 4.4.6 goto语句…………………….…..........……………....….....….......…....108 4.4.7 多重循环………………….….…..........……………....….....….......…....109 4.5 程序举例……….….………………..........…………………....…..............….......111 第五章 数组和字符串…..………………......……………...…………....…........……....117 5.1 一维数组…..………..…………....…........…………………...…........………....117 5.1.1 一维数组的定义和引用..………..…...........…………....…......………..117 5.1.2 一维数组初始化…..…………..…..…...........…………....…....………..118 5.1.3 程序举例…..………..…..…..…..……........…………....…......………....120 5.2 二维数组…………….........…..…..………………………………....…......…....127 5.2.1 二维数组的定义和引用…………..…...………………....…....………....127 5.2.2 二维数组初始化……………..…..………………………....…......…....128 5.2.3 程序举例…………………..………………………………………..…….129 5.3 字符串处理…………..…..…..…..…..….........……………………...…......…....133 5.3.1 字符数组与字符串………..…..…..…..……......………….…....…..…....133 5.3.2 字符串的输入和输出…………….......…..…...……………......…..…....133 5.3.3 字符串处理函数….………….....…………………………....…....……...136 5.3.4 程序举例…….........……..…..………………………....…...…...……...138 第六章 函数..…..……....…......……………………………...………….………………...144 6.1 模块化程序设计思想…….........…………………..…………....…......………..144 6.2 模块设计举例.........……………………………………………..…….......……...144 6.3 函数概念….........……………………………………….……....…......………..145 6.3.1 函数定义….........……………………………..…..……....…......……...145 6.3.2 函数说明和函数调用……………………….…….……....….....………..146 6.3.3 形参与实参...………………………………..…….……....….....……...149 6.3.4 函数返回值.......……………………………..…..……....…......………..150 6.3.5 传值与传址...………………………………..…….……....….....……...151 6.3.6 数组作为函数的参数的例子……………………….……....….....……...152 6.4 函数的嵌套........……………………………....…......…………………………...153 6.5 函数的递归………..…..………….…………...….......………………………...155 6.6 变量作用域和存储类别………..…..………………….…………………………160 6.6.1 局部变量和全局变量…….……….....…………………….……………..160 6.6.2 变量存储类别…..…..……....…......……………………….……………..161 6.7 使用库函数………..…..…………………………...……………………………162 6.8 程序举例………..…..……………………………………………...……………165 第七章 指针..…..……....…......……………………...………….………………...170 7.1 指针概念..…..……....…......………………………………….……………...170 7.2 指针变量的定义和使用..………….....…......………….……….………....172 7.3 指针与一维数组……......…......………………….……………………..….....175 7.3.1 一维数组的内存安排…......…………......….….…...…………..………..175 7.3.2 指向数组的指针运算...…………...…………….……….…………..…...176 7.3.3 下标法与指针法表示的等价性…….....…...…………………….………...178 7.3.4 程序举例……………….……………….………..…..……….……….....179 7.4 指针与函数……......…......…………….…………………………………..….....181 7.4.1 指针作为函数参数…......…………......….….……...…………..………..181 7.4.2 指针做为函数返回类型...…………...………….……….…………..…...184 7.4.3 动态内存分配与释放函数…….....…...…………......………….………...185 7.4.4 函数指针……………….……………….………..…..……….……….....187 7.5 指针数组、多级指针与指向一维数组的指针………….……………………..….....189 7.5.1 指针数组与多级指针…......…………......….….…...…………..………..189 7.5.2 二维数组与指向一维数组的指针...………….……….…………..…...191 7.5.3 二维数据的构造举例…….....…...……………......………….………...193 7.6 指针与字符串……......…......…………….…………………………………..….....194 7.6.1 字符串的内存安排…......…………......….….……...…………..………..194 7.6.2 字符串处理程序举例...…………...………….………….…………..…...196 7.6.3 多字符串的表示与处理…….....…...……………......………….………...198 7.6.4 程序举例……………….……………….………..…..……….……….....202 7.6.5 命令行参数…………….……………….………..…..……….……….....207 第八章 结构体、联合与枚举..……………......……………...…………....…........……....211 8.1 概述…..………………………....……........…………………...…........………....211 8.2 结构体类型定义………….........…..………………………………....…......…....211 8.3 结构体变量………….........………………………………………....…......…....212 8.3.1 结构体变量的定义…………………...………………....…....………....212 8.3.2 结构体变量的引用…………..…….………………………....…......…....214 8.3.3 结构体变量初始化………..……………………………………..……….215 8.4 结构体数组…………..…..…..…..…..……......……………………...…......…....216 8.4.1 结构体数组的定义………..…..……..……......………….…....…..…....216 8.4.2 结构体数组初始化与引用…………….......…..……………......…..…....217 8.4.3 结构体数组的输入和输出.………….....…………………....…....……...217 8.5 指向结构体类型数据的指针……..…..……....……………………...…......…....218 8.5.1 定义和初始化………..…..…..…..……………..………….…....…..…....219 8.5.2 用结构体指针引用结构体成员…………….......…………......…..…....219 8.5.3 指向结构体数组的指针.………….....…………………....……………...219 8.6 结构体与函数…………..…..…..…..…..…......……………………...…......…....221 8.6.1 向函数传递结构信息………..…..…..…..……………….…....…..…....221 8.6.2 结构体指针作为函数返回值…………….......…..…………......…..…....223 8.7 单链表……..……………………………........……………………...…......…....225 8.7.1 概述………..…..…..…..……………………......………….…....…..…....225 8.7.2 结点定义…………….......…………………………………......…..…....226 8.7.3 建立链表.………….....……………………………………....…....……...226 8.7.4 输出链表.………….....……………………………………....…....……...233 8.7.5 插入结点.………….....……………………………………....…....……...234 8.7.6 删除结点.………….....……………………………………....…....……...236 8.7.7 程序举例.………….....……………………………………....…....……...238 8.7.8 其他链表结构………….....…………………....………………….……...242 8.8 联合与枚举……..…..………………………....……………………...…......…....244 8.8.1 联合类型………..…..…..…………………......………….…....…..…....244 8.8.2 枚举类型…………….......…………………………………......…..…....246 8.8.3 复杂类型举例………….....………………………………....…....……...248 8.9 用typedef定义类型……..…..…........……………………………...…......…....250 第九章 文件…..…………………………......……………...…………....…........……....252 9.1 文件概述…..………..……………..…........…………………...…........………....252 9.2 文件打开和关闭..……….………………………......…………....…......………..252 9.3 文本文件的输入与输出….........…..………………………………....…......…....255 9.3.1 读写一个字符的函数…………..……………………....…....………....255 9.3.2 字符串读写函数…………..…..…………………………....…......…....256 9.3.3 格式化读写函数……………..…………....……………………...……...258 9.4 二进制文件的输入与输出…..…..…...….........……………………...…......…....261 9.5 其他文件库函数…..…..…...…................………........……………...…......…....264 9.5.1 文件的定位函数……….....…..…..…..……......………….…....…..…....264 9.5.2 出错监测函数…………….......…..…...………………………......……...265 第十章 预处理和位运算..…………………....……………...…………....…........……....267 10.1 预处理…..……………………..……........…………………...…........………....267 10.1.1 概述………..…..…..………………………......………….…....…..…....267 10.1.2 宏定义……..…..…..…..…………………......………….…....…..…....267 10.1.3 文件包含…..…..…..…..…………………......………….…....…..…....270 10.1.4 条件编译…..…..………..…………………......………….…....…..…....271 10.2 位运算………….........…..………………………………………....…......…....272 附录Ⅰ 常用ASCII码对照表…………………………………………………………….278 附录Ⅱ C语言的关键字表…......…………………...…………….…….….………….....279 附录Ⅲ C语言的运算符表.......…………………………...…………….……..……..…..280 附录Ⅳ C常用的库函数…......…....…………..……………………...….….…..…….....281 参考资料…......…....…………..…..…..…..…..…..…………………...….….…..…….....284
总体来说设计模式分为三大类: 创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。 结构型模式,共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。 行为型模式,共十一种:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式。 二、设计模式的六大原则 1、开闭原则(Open Close Principle) 开闭原则就是说对扩展开放,对修改关闭。在程序需要进行拓展的时候,不能去修改原有的代码,实现一个热插拔的效果。所以一句话概括就是:为了使程序的扩展性好,易于维护和升级。想要达到这样的效果,我们需要使用接口和抽象类,后面的具体设计中我们会提到这点。 2、里氏代换原则(Liskov Substitution Principle) 里氏代换原则(Liskov Substitution Principle LSP)面向对象设计的基本原则之一。 里氏代换原则中说,任何基类可以出现的地方,子类一定可以出现。 LSP是继承复用的基石,只有当衍生类可以替换掉基类,软件单位的功能不受到影响时,基类才能真正被复用,而衍生类也能够在基类的基础上增加新的行为。里氏代换原则是对“开-闭”原则的补充。实现“开-闭”原则的关键步骤就是抽象化。而基类与子类的继承关系就是抽象化的具体实现,所以里氏代换原则是对实现抽象化的具体步骤的规范。—— From Baidu 百科 3、依赖倒转原则(Dependence Inversion Principle) 这个是开闭原则的基础,具体内容:真对接口编程,依赖于抽象而不依赖于具体。 4、接口隔离原则(Interface Segregation Principle) 这个原则的意思是:使用多个隔离的接口,比使用单个接口要好。还是一个降低类之间的耦合度的意思,从这儿我们看出,其实设计模式就是一个软件的设计思想,从大型软件架构出发,为了升级和维护方便。所以上文中多次出现:降低依赖,降低耦合。 5、迪米特法则(最少知道原则)(Demeter Principle) 为什么叫最少知道原则,就是说:一个实体应当尽量少的与其他实体之间发生相互作用,使得系统功能模块相对独立。 6、合成复用原则(Composite Reuse Principle) 原则是尽量使用合成/聚合的方式,而不是使用继承。
计算机信息管理系统设计原则与原理 计算机信息管理系统作为计算机领域的一个重要部分,是由计算机和人共同组成的, 这个系统能够进行数据的传递、收集、加工、存储、使用和维护。计算机管理系统是由 四个部分以及三大支柱组成的:四个部分分别是信息处理器、信息源、信息管理者、信 息用户;三大支柱分别是数据库、计算机网络、现代化管理。 1 计算机信息管理系统概述。 通过计算机信息管理系统,人们能够较为高效的获取一些需要的信息,所以这一系统 不止能够在组织或者企业的管理经营中进行运用,应用的领域越来越广泛。 中国的水利网站曾经有这样一篇报道,国家水利部将以网络平台和计算机为依托将农 村安全饮水的管理水平进行进一步的提升;河北日报也曾有过一篇关于这方面的报道, 在 2013 年 10 月 1 日,在所有的教练车上安装了一个系统软件,该软件就是计算机信息管理系统,是为了 进一步防止学车的学员"偷工减料".在这些报道中能够充分看出计算机管理系统在社会中 发挥的作用越来越大,所以将计算机信息管理系统的一系列运作原理弄明白非常有必要 。 计算机信息管理系统是以计算机为工具,通过收集、存储、分析和处理数据,得出管 理人员所需信息的系统,能够对数据库、计算机网络以及现代化的各种管理方式充分的 进行利用,将统计学、会计学、数学以及经济学等一系列模型进行充分的利用,对数据 具有非常强大的作用。比如,企业中的信息管理系统能帮助管理人员进行质量分析、市 场预测、库存控制等工作。 总的来说,计算机信息管理系统具有的作用包括协助人员分析、处理、控制、预测数 据以及对决策进行辅助。 2 计算机信息管理系统设计应遵循的原则 当下这个时代是瞬息万变的,随着计算机信息管理系统发展的不断深入,系统不稳定 、信息的安全性缺乏保障等一系列问题逐渐暴露出来。为避免这些问题的出现,在设计 的过程中需要遵循以下原则: 2.1 与时俱进 随着科技的不断进步与发展,计算机系统不能只在最初设计的技术层面上止步不前, 要随着新技术的不断研发,对该系统的功能不断进行更新;此外,我们所处的时代是一 个信息大爆炸的时代,在该系统中要及时替换和更新数据库中的信息;计算机信息网络 的管理水平也要紧跟上时代的步伐,与前沿的技术及综合水平要保持一致,才能更好的 为社会的发展提供技术和智力的支撑。 2.2 重视信息安全 在进行设计的过程中,在子系统进行工作时编程人员要保证其独立性,互相之间不能 出现干扰。此外,计算机信息管理系统往往以网络为依托,而网络信息具备共享性的特 点,因此一定要高度重视信息的安全。在这一系统中,要对局域网进行限制,如果使用 该系统时不在局域网之内,一定要选择客户端的方式进行登录,以保证信息的安全。 2.3 运用跨平台方案 计算机信息管理系统中可以选择运用跨平台的方案,如此一来不仅节省了维护信息的 费用,还有利于促进更新系统管理的相关设备,不断完善计算机信息系统。 2.4 及时查看 技术管理人员要及时查看这一系统,防止混入不具备价值的数据,同时也能够有效避 免由于临时出现的故障对工作造成的延误。 3 计算机信息管理系统的设计原理 计算机信息管理系统主要运用的工具就是计算机,设计系统的工作人员在进行数据信 息收集、存储、处理以及分析之后,将有效的信息进行汇总。在计算机专业分支中,计 算机管理系统是非常重要的一个部分,人们可以应用计算机信息管理系统来对所需的资 料信息进行搜寻,对数据进行分析,对其流程进行预测,在对事物进行决策时能够起到 辅助作用,因此高效的计算机信息管理系统的基本原理对于该系统来说非常重要。 概括的说,计算机信息管理系统就是利用网络技术为基础,合并使用数据库技术以及 计算机技术的一种信息管理系统。在对计算机信息管理系统进行相应的设计时,首先需 要对数据进行全面的分析,找出对信息系统进行管理的具体方法,最终的目标及在系统 中所提供的一系列相关管理功能;其次将功能管理的模块设计出来,来实现服务器中所 具有的功能;同时需要对数据库的管理进行设计、完成各个模块的属性设置以及数据字 典;然后对客户所提出的要求以及需求进行归纳和综合,将概念模型制作出来;接着将 概念模型进行转化,转化成数据模型;最后需要进行的工作是匹配一个与数据模型相符 合的物理结构,将关系数据库建立起来,管理程序的编制以及系统的安全维护以及调整 。这六个步骤起到的作用都非常重要,少一个步骤都不行。 计算机信息管理系统中所设立的功能模块是对实施管理模型的方法进行了具体的论述 ,对模块进行设计主要是将系统中自身模块的结构进一步的明确,对系统之间的一些关 系进行合理的安排,从而对子系统的模块结构图进行描绘。如此一来就对模块之间与子 系统之间传输数据的途径与方法进行了规定,从而使得数据信息的有序输出与输入有了 相应的保证。 在对
自动化控制系统设计方案 一、现地控制软件 现地采集控制软件采用业界领先的平台和面向对象机制的编程语言在数据库作业系统基 础上进行高可靠性、实时性的现地控制应用软件 二、主控级 1、数据的采集及处理 接收现地控制单元的上送数据并进行处理及存入数据库,供分析计算、控制调节、画 面显示、记录检索、操作指导、打印等使用。数据采集除周期性进行外,在所有时间内 ,可由操作员或应用程序发命令采集现地控制单元的过程信息。 2、运行监视、控制和调节 运行操作人员能通过上位机,对各闸门开度和启闭机的运行工况进行控制和监视。除 了显示各孔闸门的位置图形和开度数据外,还设置"启动"、"停止"两个模拟操作按钮和 "上升"、"下降"、"远程/现地"、"通讯状态"等模拟指示。主要内容如下: a、根据要求的过闸流量,计算出闸门当前应开启的高度(在上下限范围内)电脑提示 是否确认,若确认即可启动闸门; b、闸门启闭控制,根据给定值启闭闸门,到位停止; c图形、表格、参数限值、状态量等画面的选择和调用; d在主控级进行操作时,在屏幕上应显示整个操作过程中的每一步骤和执行情况; 三 、打印记录 显示、记录、打印功能 所有监控对象的操作、实时参数都予记录,对故障信号进行事件顺序记录、显示,实 行在打印机上打印出来。主要内容如下: (1)闸门动作过程动态显示; (2)给定开度值显示,闸门位置显示; (3)闸门升降模拟显示图; (4)上、下游水位数据显示 (5)根据上下游水位和闸门开度,自动计算出当前流量,并进行累计 (6)运行显示、打印; 四、通信功能 主控级与现地控制单元采用RS485总线通信,当通讯不正常时,报警显示。 五、 现地控制单元 1、实时自动采集闸门开度在现地显示并通过处理后传送至主控层; 2、根据主控层指令,或根据人工输入的合法控闸指令,在满足下列条件的情况下, 自动控制闸门的升、降,并运行到指定位置; 3、当转换开关在现地状态时,可对闸门开度进行预置,并通过电控柜的升、降、停按 钮实现闸门的启闭; 4、在现地控制单元,通过权限开关,可实现远程/现地切换; 5、保留原人工手动控闸功能,人工与自动并存,以便紧急状态及维护系统时使用。 六、 系统组成 (1) 系统主要由信息采集与控制、集中监控和信号传输三大部分组成。启闭机室设若干台现 地控制柜(PLC),其中信息采集与控制由闸门开度传感器与开度仪、水位传感器等部件组 成。集中监控由计算机、键盘鼠标、打印机、UPS电源及其他设备组成(不在供货范围)。 而信号传输部分则是采用双绞屏蔽电缆来完成传感器、测量仪器、计算机之间的信号连 接与通信。在这些设备中,各种传感器安装于现场,开度仪装于启闭机室内的控制柜(即 PLC)上。 现地控制单元主要完成以下任务:接收主控级发来的各种控制命令,并通过各种输 入输出模块完成对水位及闸门的实时控制。 现地控制与远方控制相互闭锁,优先级为现地控制。现地控制时,能将控制信号, 运行状态信号在现地控制屏上反映并能送至主控级。远方控制时,启闭机、闸门本身及 周围的安全设施都必须处于良好的状态。虽然控制系统本身对意外情况有应急处理能力 ,但是从安全第一的原则考虑,人工的干预仍是必要的,而且是具有最高执行优先级的 。 七、 系统硬件结构布局 现地控制柜(PLC)采用控制柜,,每台现地控制柜(PLC)从上而下分别为启闭机工 作电流、电压指示;闸门开度仪(从显示面板上可进行人工预置开度);各闸门升、降 、停及供电电源指示;各闸门升、降、停操作按钮。智能仪表(终端)均为面板式仪表 ,均为屏面插入式安装。屏内安装二次回路、端子排、交流接触器、断路器等。各启闭 机的机械上下限位开关通过屏内端子排接入对应的二次控制回路。 ----------------------- 自动化控制系统设计方案全文共3页,当前为第1页。 自动化控制系统设计方案全文共3页,当前为第2页。 自动化控制系统设计方案全文共3页,当前为第3页。
自动化控制系统设计方案 一、现地控制软件 现地采集控制软件采用业界领先的平台和面向对象机制的编程语言在数据库作业系统基础上进行高可靠性、实时性的现地控制应用软件 二、主控级 1、数据的采集及处理 接收现地控制单元的上送数据并进行处理及存入数据库,供分析计算、控制调节、画面显示、记录检索、操作指导、打印等使用。数据采集除周期性进行外,在所有时间内,可由操作员或应用程序发命令采集现地控制单元的过程信息。 2、运行监视、控制和调节 运行操作人员能通过上位机,对各闸门开度和启闭机的运行工况进行控制和监视。除了显示各孔闸门的位置图形和开度数据外,还设置"启动"、"停止"两个模拟操作按钮和"上升"、"下降"、"远程/现地"、"通讯状态"等模拟指示。主要内容如下: a、根据要求的过闸流量,计算出闸门当前应开启的高度(在上下限范围内)电脑提示是否确认,若确认即可启动闸门; b、闸门启闭控制,根据给定值启闭闸门,到位停止; c图形、表格、参数限值、状态量等画面的选择和调用; d在主控级进行操作时,在屏幕上应显示整个操作过程中的每一步骤和执行情况; 三 、打印记录 显示、记录、打印功能 所有监控对象的操作、实时参数都予记录,对故障信号进行事件顺序记录、显示,实行在打印机上打印出来。主要内容如下: (1)闸门动作过程动态显示; 自动化控制系统设计方案全文共3页,当前为第1页。(2)给定开度值显示,闸门位置显示; 自动化控制系统设计方案全文共3页,当前为第1页。 (3)闸门升降模拟显示图; (4)上、下游水位数据显示 (5)根据上下游水位和闸门开度,自动计算出当前流量,并进行累计 (6)运行显示、打印; 四、通信功能 主控级与现地控制单元采用RS485总线通信,当通讯不正常时,报警显示。 五、 现地控制单元 1、实时自动采集闸门开度在现地显示并通过处理后传送至主控层; 2、根据主控层指令,或根据人工输入的合法控闸指令,在满足下列条件的情况下,自动控制闸门的升、降,并运行到指定位置; 3、当转换开关在现地状态时,可对闸门开度进行预置,并通过电控柜的升、降、停按钮实现闸门的启闭; 4、在现地控制单元,通过权限开关,可实现远程/现地切换; 5、保留原人工手动控闸功能,人工与自动并存,以便紧急状态及维护系统时使用。 六、 系统组成 自动化控制系统设计方案全文共3页,当前为第2页。 (1) 系统主要由信息采集与控制、集中监控和信号传输三大部分组成。启闭机室设若干台现地控制柜(PLC),其中信息采集与控制由闸门开度传感器与开度仪、水位传感器等部件组成。集中监控由计算机、键盘鼠标、打印机、UPS电源及其他设备组成(不在供货范围)。而信号传输部分则是采用双绞屏蔽电缆来完成传感器、测量仪器、计算机之间的信号连接与通信。在这些设备中,各种传感器安装于现场,开度仪装于启闭机室内的控制柜(即PLC)上。 自动化控制系统设计方案全文共3页,当前为第2页。 现地控制单元主要完成以下任务:接收主控级发来的各种控制命令,并通过各种输入输出模块完成对水位及闸门的实时控制。 现地控制与远方控制相互闭锁,优先级为现地控制。现地控制时,能将控制信号,运行状态信号在现地控制屏上反映并能送至主控级。远方控制时,启闭机、闸门本身及周围的安全设施都必须处于良好的状态。虽然控制系统本身对意外情况有应急处理能力,但是从安全第一的原则考虑,人工的干预仍是必要的,而且是具有最高执行优先级的。 七、 系统硬件结构布局 自动化控制系统设计方案全文共3页,当前为第3页。现地控制柜(PLC)采用控制柜,,每台现地控制柜(PLC)从上而下分别为启闭机工作电流、电压指示;闸门开度仪(从显示面板上可进行人工预置开度);各闸门升、降、停及供电电源指示;各闸门升、降、停操作按钮。智能仪表(终端)均为面板式仪表,均为屏面插入式安装。屏内安装二次回路、端子排、交流接触器、断路器等。各启闭机的机械上下限位开关通过屏内端子排接入对应的二次控制回路。 自动化控制系统设计方案全文共3页,当前为第3页。 自动化控制系统设计方案

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值