1、南京理工大学毕业设计说明书论文作者学号0910190255学院系自动化学院专业电气工程及其自动化题目电气控制柜主控制板软件设计指导者姓名专业技术职务评阅者姓名专业技术职务2013年5月讲师毕业设计说明书(论文)中文摘要电气测试柜是一种根据设备逻辑功能通过给定相应信号并对比输出结果来对设备进行检测的电气柜。其核心芯片一般为单片机,随着技术的发展其操作更为智能化,同时也有着良好的可靠性与准确性。本设计主要解决课题中控制板的软件设计部分工作。文章简单介绍了电气柜的硬件与软件系统结构,就表格的数据清单信息结合实际电路给出其逻辑含义解释,最后给出了软件系统中数据清单(EXCEL格式)导入子程序及通信模块
2、CAN通信子程序的相关设计思路,同时对设计中部分程序进行了一定的注解。在熟悉CSS编程环境的情况下,完成了任务子程序的设计内容,且子程序调试未出现逻辑错误。关键词电气测试柜软件系统设计EXCEL清单CAN通信毕业设计说明书(论文)外文摘要TITLESOFTWAREDESIGNOFMAINCONTROLPANELONELECTRICALTESTINGCABINETABSTRACTTHEELECTRICALTESTINGCABINETISAKINDOFCABINETWHICHGIVESEQUIPMENTOUTPUTSIGNALTHATBASEDONLOGICALFUNCTIONOFTHEDEVIC
3、EANDCOMPARETHESTANDARDTOGETRESULTSATTHESAMETIMEITSCORECHIPISGENERALLYMICROCONTROLLER,ANDITBECOMESMOREINTELLIGENT,BUTALSOHASAGOODRELIABILITYANDACCURACYBECAUSEOFTHEDEVELOPMENTOFSCIENCEANDTECHNOLOGYTHEWORKSOLVESTHEDESIGNOFTHEMAINCONTROLPANELSOFTWAREINTHEISSUEARTICLEBRIEFLYDESCRIBESTHEELECTRICALCABINETH
4、ARDWAREANDSOFTWARESYSTEMARCHITECTURE,ANDBYCHECKINGDATAONTHETABLEWITHTHEACTUALCIRCUITGIVESMEANINGTOITSLOGICALEXPLANATION,FINALLY,GIVINGROUTINESABOUTALISTOFDATAEXCELFORMATINTHESOFTWARESYSTEMANDTHECANCOMMUNICATIONINCOMMUNICATIONMODULE,WHILEGIVINGACERTAINAMOUNTOFCOMMENTSABOUTTHEDESIGNPARTOFTHEPROGRAMINA
5、FAMILIARSITUATIONTOCSSPROGRAMMINGENVIRONMENT,COMPLETETHETASKSUBROUTINEDESIGNCONTENT,ANDTHESUBROUTINEDOESNOTAPPEARLOGICALERRORDEBUGGINGKEYWORDSELECTRICALTESTCABINETDESIGNOFSOFTWARESYSTEMEXCELDATACABINETCANCOMMUNICATION本科毕业设计说明书(论文)第I页共I页目录1引言111电气控制柜的简介112电气控制柜的发展及展望113论文内容安排22基于地铁设备检测的电气柜逻辑测试仪221基于地
6、铁检测的电气控制柜硬件系统222基于地铁检测的电气控制柜软件系统33电气控制柜软件系统设计431软件系统各模块功能简介532软件系统数据清单(EXCEL格式)导入的程序设计5321电气柜数据清单(EXCEL格式)基本含义6322采用封装类CSPREADSHEET读取EXCEL数据库7323采用ODBC的方法读取EXCEL数据库10324小结1433电气柜通信模块软件设计14331CAN通信15332小结20结论21致谢22参考文献23本科毕业设计说明书(论文)第1页共24页1引言随着社会科学技术的发展,人们外出出行的交通工具越来越多元化、方便化、快捷化。地铁,不同于传统的城市公交,有着其独特的
7、方便、快捷、高速的特点,在我国的大中型城市已经越来越普及化。当一座城市开通建成一条新的地铁线路,检测并保证地铁的无故障投入运行是重中之重。控制柜等自动化设备是地铁车辆控制系统中重要的组成部分,其具有正确、可靠、稳定的逻辑运行功能对地铁车辆运行安全起着非常重要的作用。因此研究、开发和设计一种专门的检测设备电气测试控制柜,一种具备监测、测试、诊断逻辑功能的电气柜是十分有必要的。11电气控制柜的简介所谓电气控制柜,是指按照一定的电气逻辑关系,通过设计特定功能的操作软件系统,将电源和开关(配电部分)、保护线路部分、断路器、继电器以及变频器等电气元件组合起来的一系列成套设备(低压、高压),并且能够根据不
8、同的逻辑需求来设计电气控制柜实现不一样的功能。例如现代工业化生产中应用越来越普遍的电气自动化控制系统就是一种最普遍的电气控制柜,其通常是将需要用到的各种断路器、变频器、继电器等低压电器元件与PLC、连接器、工控机等现代自动控制设备组合起来的一种电气控制柜,同时也将设备监控、数据测量、信号保护、功能调节等功能模块组合在一起从而来控制系统的运行状态,该类电气柜一般安装在生产现场或相关车间控制室内。12电气控制柜的发展及展望20世纪6070年代,我国在模仿国外技术的基础上设计开发了第一代有统一标准的低压成套电气设备,其也是电气控制柜的基本雏形。20世纪7080年代,在引进国外先进技术的基础上,设计开
9、发了第二代产品,在技术与工艺上都有着巨大的提升。20世纪90年代以来,随着高新技术以及微电子技术的快速发展,电气控制柜行业如雨后春笋般体现出巨大的生命力与发展力,在跟踪吸收国外的新技术产品,我国也自主研发了许多新功能产品,并且越来越更多的运用到人们的日常生活之中去15。随着DSP系统、PLC编程技术以及电力电子技术的结合运用到控制柜设计中,其在设备测试与操作控制方面发挥着巨大的作用,同时电气控制柜逐渐向着智能化、多本科毕业设计说明书(论文)第2页共24页功能化和组合化的方向发展,不仅有着方便的操作,同时也具备无与伦比的可靠性能与稳定性。因此,未来电气控制柜在交通、化工、医疗、航天等一系列基础甚
10、至高新技术领域将会发挥出更加巨大的作用。13论文内容安排论文首先介绍了现代电气控制柜的基本知识背景及其发展历程,第二部分简要概述了基于地铁设备检测的电气柜逻辑测试仪应当具备的功能,通过介绍电气柜的硬件系统组成与软件系统组成分析了电气柜的组织结构。该课题主要完成软件系统设计的任务,所以在第三部分给出了设计工作的详细讲解。第三部分的内容又分为三部分,软件系统各模块功能简介、软件系统数据清单(EXCEL格式)导入的程序设计和电气柜通信模块软件设计,通过工作的论述,介绍了主要设计内容,并给出了一定的设计结果。最后部分则是对整个设计工作进行一次结论性的概述,同时包括致谢撰写与参考文献的标注。2基于地铁设
11、备检测的电气柜逻辑测试仪电气柜逻辑功能检测仪的主要功能包括A)能够分析电气柜内部逻辑布线图并自动导入逻辑关系,自动对电气柜内部的逻辑回路进行检测,完成电气柜上下部各连接器的信号检测。B)能够判断出电气柜中的逻辑功能器件在闭合或断开情况下的失效情况并记录相应结果,实现对电气柜逻辑功能的故障检测与诊断分析。C)测试分析各信号数据并记录存档、根据测试数据机分析结果生成和输出测试报表、具备网络通讯等功能。21基于地铁检测的电气控制柜硬件系统简单来说,一般一个电气测试柜主要由硬件系统与软件系统两部分组成。就硬件系统部分,本课题中基于地铁运行的电气柜逻辑功能测试仪主要包括电源控制箱、采集控制箱、操作柜三部
12、分。电源控制箱采用以430单片机为核心的控制电路,实现110V测试电源和24V测试电源的通断控制。采集控制箱主要由通讯控制板、110V逻辑采集输出板、24V逻辑采集输出板、大功率逻辑控制板、后背板组成,实现信号的采集及输出控制功能。电源控制箱实现测试电源的接通后传送至采集控制箱,采集控制箱通过通讯控制板对电源信号进行识别处理最后进行输出。在这里需要指出的是通讯控制本科毕业设计说明书(论文)第3页共24页板根据CAN通信电路(如图21所示)来实现主要功能,而基于此电路的CAN通信程序的设计也正是本次课题设计的主要内容之一。操作柜一般使用工业控制计算机,同时配套键盘盒、液晶显示器、打印机等设备。图
13、21CAN通信电路22基于地铁检测的电气控制柜软件系统对于软件系统部分,本课题中工控计算机应用软件是在WINDOWS操作系统上基于VISUALSTUDIO2005和SQLSERVER2008平台进行研究、设计、开发,其整体上位机应用软件系统结构如图22所示。总结构图共由4个模块组成,每个模块分别包括有相应的子功能模块,本课题的主要任务就是要完成结构图中逻辑处理模块中逻辑导入功能设计以及通信模块中CAN通信协议的设计工作。本科毕业设计说明书(论文)第4页共24页图22上位机应用软件系统结构3电气控制柜软件系统设计控制柜软件设计采用上位机应用软件系统结构,并基于上位机应用软件的工作流程(图31所示
14、),因此采用模块化设计思想。通过分块,软件系统模块主要分为监控模块、逻辑处理模块、数据库管理模块、通讯控制模块四个部分。各主要模块也由其相应的子模块组成,由此,软件设计采用一种由下及上的基本思路,首先设计能够完成子模块逻辑功能的子程序,然后将各主要模块下的子程序组合并通过一定的设计调试完成能够实现主要模块逻辑功能的主程序,最后将各主程序组合进行编译并且通过与硬件系统的组合调试,最终生成能够完成整体控制柜逻辑功能的操作程序,到此,软件系统设计内容基本完成。图31上位机应用软件工作流程本科毕业设计说明书(论文)第5页共24页31软件系统各模块功能简介基于工控机所应用的操作系统,故监控模块采用WIN
15、DOWS界面风格,主界面包含标题栏、菜单栏、工具栏、工作区和状态栏,通过“系统”、“逻辑处理”、“逻辑测试”、“数据库管理”、“帮助”五个菜单项及“系统配置”、“工作路径”、“用户管理”、“退出”等子菜单完成系统的相关设置及环境设置、用户管理等。逻辑处理模块导入数据配置文件,按需求可以进行数据配置的修改,通过导入查看逻辑关系,生成并可以查看相应的测试程序,最后根据测试的逻辑真值关系生成接口配置。逻辑测试模块包含系统上电测试、电气柜导通测试、逻辑功能测试、故障点手工重测、断路器支路手动测试、指示灯支路手动测试、转换开关支路手动测试以及手动测试等测试功能。数据库管理模块中,数据库包含故障数据,测试
16、数据和电气柜逻辑数据,主要完成数据库管理功能。数据库管理模块负责数据库的修改、补充、查询等任务,主要分故障字典库管理、测试数据库管理以及已有测试逻辑线路库的管理。通信模块可根据实际需要完成各种协议信号转换,主要有CAN通信协议和RS485通信协议等,负责与多功能智能扩展模块的通讯,通过总线将控制命令、时序等发送给多功能智能扩展模块执行。32软件系统数据清单(EXCEL格式)导入的程序设计上位机应用软件的工作流程一开始就是逻辑关系的导入,首先读取外部电气参数文件,获取数据文件格式信息,或者在监控界面上设置数据文件参数及对话框,输入调整数据文件格式信息及数据检测信息,之后开始读电气柜逻辑布线连接清
17、单表,对读入的数据作规格化处理,正确辨识各种特殊符号,使其符合程序处理要求,并能识别错误的输入。由此逻辑关系的生成主要是通过对元件电气参数、检测手段及其标准、内部逻辑布线图分析而来,其中电气参数部分包括设备端口型号、端口接入与接出规格、检测端口参数等信息。由于数据量比较大,一般多为EXCEL表格形式,同时这类信息决定着电气柜中最主要的检测逻辑关系标准。对于电气柜软件系统的设计来说,只有先实现信息的导入,接下来的检测工作才是有意义的,所以处理好外界对上位机的信息导入问题是十分重要的,也就是本课题中的设计好软件系统数据清单(EXCEL格式)的导入程序。本科毕业设计说明书(论文)第6页共24页本课题
18、中电气柜的软件开发是基于CSS语言环境,简单的讲就是VC编程。而在VC中读取EXCEL表格数据库的方法通常有两种,一种是采用封装类CSPREADSHEET,另一种是采用ODBC数据库的方法。通过这两种方法均可方便地实现对EXCEL文件数据的访问。321电气柜数据清单(EXCEL格式)基本含义下图32所示为电气柜其中一份简单的逻辑测试数据清单信息。图32第四版逻辑测试接口配置表格共20行4列数据,标题信息分别为连接器、连接器端口、测试箱、测试箱端口。由表格可知,不同的信号根据特定逻辑关系采用不同的连接器、连接器端口,而多测试箱端口的同时连接则充分保障了检测的有序性、效率性。就表格第一行所示数据信
19、息来说,假设接入信号判断为24V,根据图33中电路图所示,则其逻辑表述为信号判断为24V后,软件系统查询确定真值表数值,由数据本科毕业设计说明书(论文)第7页共24页类型确定连接器、连接器端口位置,选用电气柜内选择1号测试箱来完成测试工作,之后信号控制器控制开关1闭合,测试信号通过CF04C2LU3_4连接器上2(A2)连接器端口即电路图中1号测试输入点接入1号测试箱上7号测试箱端口来进行检测,最后检测结果由状态检测端口输出。图3324V逻辑采集输出板322采用封装类CSPREADSHEET读取EXCEL数据库简单来说,CSPREADSHEET是一个C编写的EXCEL读写控件。当我们需要对某个
20、EXCEL文件或文本特征文件进行读写或其他一系列操作时,CSPREADSHEET能使该工作事倍功半。CSPREADSHEET能方便的是用户读写此类文件,同时以对象的形式供我们使用616。CSPREADSHEET封装类具有以下几个特性A)创建EXCEL文件或者文本特征文件,可以写入单行或者多行数据。B)从EXCEL文件或者文本特征文件中读取单行、单列、多行、多列数据。C)替代、插入、追加数据到EXCEL文件或者文本特征文件中。D)转换已经存在或者最近打开的EXCEL文件或者文本特征文件。除此之外,CSPREADSHEET的使用也受到某些限制A)该控件需要MFC(微软基础类库)支持。B)为测试是否
21、支持UNICODE编码。C)控件以ODBC读取EXCEL文件,需要ODBC驱动程序。本科毕业设计说明书(论文)第8页共24页D)EXCEL文件必须要进行列标记,并且首行列标记唯一。E)禁止删除工作簿即行列表,仅允许删除工作簿即列表中的内容。F)列值类型参照程序数据类型,不参照EXCEL文件。CSPREADSHEET封装类之所以能够方便的操作EXCEL表格类数据也得归功于其中EXCEL专用函数BOOLREPLACEROWSCSTRINGARRAYIIROWS表示行查询超出表范围,语句IFICOLUMNICOLS表示列查询超出表范围。程序最后一部分为读取相应的内容,在执行查询或读取指定行、列单元格
22、数据操作时,输出语句为STRFORMAT“行号D,列号D,内容S“,IROW,ICOLUMN,TEMPSTRING。下图36给出设计程序调试结果,未出现逻辑错误。图36使用CSPREADSHEET封装类程序调试结果323采用ODBC的方法读取EXCEL数据库ODBC是一种开放的数据库连接,一种广泛应用于数据库访问的应用程序编程接口API。ODBC是独立于DBMS的包含数据访问程序的库,我们可以把它作为建立跨越数据库的工具。ODBC最大的好处是互用性,应用程序使用相同的源代码可以访问不同的数据库管理系统。数据库应用程序可以在ODBC接口中直接调用函数进行数据处理。这一点在开发基于客户/服务器模式
23、的数据库管理系统中非常有用。在客户/服务器配置中,基于DBMS的ODBC接口作为客户,数据源作为服务器。前端软件和后端数据库通过ODBC高效简捷地连接起来,为我们提供快速、协调用数据访问能力。总本科毕业设计说明书(论文)第11页共24页的来说,ODBC使得用户不需要了解数据在哪儿存放以及应用程序是如何获取数据的,我们只需要创建好数据源即可,大大简化方便了用户进行数据访问处理1719。VC是通过ODBC数据库来访问EXCEL表格的,也就是说,VC将EXCEL表格当作数据库来处理。既然是数据库,那么就需要建立一个与该库对应的DSN。DSN(DATASOURCENAME)数据源名称,为ODBC定义了
24、一个确定的数据库和必须用到的ODBC驱动程序,其中包括关于数据库驱动程序的信息、数据库存放位置、数据库名称、用户数据源、系统数据源、文件数据源等内容4。除此之外,在建立DSN之前,首先要确定,已经安装了EXCEL的驱动,本课题中程序设计时采用表格文件的驱动为“MICROSOFTEXCELDRIVERXLS“。总的来说,对于一个数据库中的表格,有了一个与之对应的访问设置(RECORDSET)就可以打开该表格,然后才可以对表格进行访问操作。图37给出设计程序运行总体流程图。头文件定义驱动函数初始化初始化数据驱动判断子程序行判断子程序读取数据并输出结果图37使用ODBC数据库流程图程序设计,首先在S
25、TDAFXH文件中加入声明定义INCLUDEINCLUDE第二步通过ODBC直接创建EXCEL文件,这里必须注意语句CSTRINGSDRIVER“MICROSOFTEXCELDRIVERXLS“表示EXCEL安装驱动接下来进行数据的初始化。与上一种方法不同,使用语句如下本科毕业设计说明书(论文)第12页共24页SSQL“INSERTINTODEMOLINK,LINKPORT,TEST,TESTPORTVALUES“CF04C2LU3_4“,“2A2“,“1“,7“SSQL“INSERTINTODEMOLINK,LINKPORT,TEST,TESTPORTVALUES“CF04C2LU3_1“,
26、“112“,“1“,7“初始化完成后通过ODBC直接读取EXCEL文件暂定文件名DEMOXLS,首先检索是否安装有EXCEL驱动,如若没有发现EXCEL驱动,则返回结果AFXMESSAGEBOX“没有安装EXCEL驱动“在检测到驱动后,打开数据库访问表格。该部分设置读取的查询语句SSQL“SELECTLINK,LINKPORT,TEST,TESTPORT“FROMDEMO“ORDERBYLINK“此处表名的写法需要注意,EXCEL里的表默认为系统表,所以访问表时表明应为表明。读取EXCEL内部数值操作语句与上一种方法也不同RECSETGETFIELDVALUE“LINK“,SITEM1RECS
27、ETGETFIELDVALUE“LINKPORT“,SITEM2RECSETGETFIELDVALUE“TEST“,SITEM3RECSETGETFIELDVALUE“TESTPORT“,SITEM4以此该种方法为逐行访问表格,不具备数据查询功能,并且选取读取数据的起始行需要满足不为0且不超出最大行范围,其访问总流程图如图38所示。本科毕业设计说明书(论文)第13页共24页开始是否安装驱动输入查询信息M行起行不为0且不超出最大范围查询到M行逐行读取并输出结束未安装驱动YYNN图38访问总流程图下图39给出设计程序调试结果,未出现逻辑错误。图39使用ODBC数据库程序调试结果本科毕业设计说明书(
28、论文)第14页共24页324小结该部分首先分析了上位机的工作流程及其逻辑功能,从而确定需要设计的各类功能模块。然后简单说明了数据清单表格所包含的逻辑含义,主要分析了上位机对于EXCEL表格形式的数据进行操作的两种途径,即CSPREADSHEET封装类与ODBC数据库。简单说明了两种方法的知识背景,然后给出了一定的程序设计思路,每一段程序设计要点都有一定说明,重要语句都给出详细注解。对程序进行过调试,没有出现逻辑错误。无论是使用CSPREADSHEET封装类还是ODBC数据库来操作EXCEL表格,其具体思路都大致为数据初始化、设计各类功能模块子程序、调用功能程序读取数据,其中都有各自不同的条件判
29、定语句。就单一的使用ODBC数据库来说,此方法相对来说程序操作比较简单,不过对于查找特定行列的数据操作有欠缺,只局限于逐行读取表格数据,而使用CSPREADSHEET封装类来操作读取EXCEL表格数据,功能更为灵活完备,同时也具备更多的调整空间。33电气柜通信模块软件设计工控计算机通过通信模块发过来的控制命令转换成电气柜的逻辑输入控制信号110V左右,然后通过AD转换器采集电气柜输出电压信号,并将采集后的输出电压信号发送给通信模块,再由通信模块上传给工控计算机,在工控计算机中对这些数据进行处理分析。总体来说,通信模块可根据实际需要完成各种协议信号转换,本课题主要为CAN通信协议,这也是该部分软
30、件设计的主要内容。程序设计之前,需要清楚了解模块的通信流程,本课题中电气柜通讯控制板主要有以430单片机为核心的处理电路、CAN通讯电路、电源变换控制电路、控制测试电路组成,其工作流程图如图310所示本科毕业设计说明书(论文)第15页共24页电源转换控制核心处理电路开始分配控制通讯控制110V电源24V电源测试控制结束图310通信模块工作流程通讯控制板通过CAN总线与工控机通讯,信号过来通过电源变换控制进行转换处理,功率逻辑输出板进行分配控制,功率逻辑输出板通过1个32芯接插头、1个21芯强电流接插头与后背板相连,32芯接插头主要有通讯总线、工作电源线等,21芯接插头主要有测试电源总线、功率测
31、试点等,通过分配,信号到测试控制进行测试以发出回告。从图中了解通信模块中需要区分识别电源110V与24V,以选择正确的接入端口,在程序设计时需要注意这部分逻辑功能的准确实现。总的来说,软件设计需要完成信号转换并成功发送接受、测试分析并将状态结果回告这两个工作,由此,该模块部分软件设计的大体思路为CAN通信协议的初始化、数据的发送其中包括110V与24V信号区分、数据的接受响应(一般为中断响应方式)、状态回告。331CAN通信CAN是控制器局域网络(CONTROLLERAREANETWORK)的简称,它是一种串行多主站控制器局域网通信总线,具有电路简单,通信速率较高,良好的抗干扰性等显著性能,并
32、且借助于目前越来越流行的DSP控制系统大大提高了CAN通信的实时性与可本科毕业设计说明书(论文)第16页共24页靠性。一般要实现一个CAN通信需要完成三个模块初始化模块、数据的发送模块、数据的接受模块,其中数据的发送和接受模块多采用中断服务程序流程2125。在数据的发送模块中,信号到通信模块后并不可能立刻发送出去被接受,需要先判断发送缓冲器是否已清空,根据结果采取不同措施,其模块流程图如图311所示开始发送数据初始化发送缓冲器空将待发数据定入缓冲器设置发送请求位等待清空YN结束图311数据的发送流程在数据的接受模块中,相比于数据的发送要复杂一点。因为一般采用中断响应类型,所以需要先判断是否CA
33、N中断,若不发生中断,则还需判定是否有溢出中断,若无则接收数据,否则需要等待直到溢出清除;若发生中断则转至接受缓冲器,判断缓冲器是否清空,直到缓冲器清空再判断有无溢出中断,之后处理流程与不发生CAN中断相同。其流程图如图312所示本科毕业设计说明书(论文)第17页共24页开始数据发送CAN接受中断接受缓冲器读信息并储存设置命令位释放缓冲器调用信息接受进程完成数据处理接受缓冲器空发生溢出中断调用处理函数并清除溢出数据结束YYYNNN图312数据的接受流程本课题中以430单片机为核心处理电路,现在很多的单片机本身也集成了CAN接口控制器的功能,因此单片机应用CAN接口通信已经成为一种趋势。需要注意
34、的是同一个CAN网络中只能使用同一种波特率进行通信,各CAN网络节点控制器使用的晶振不一定一致,使得波特率设置成为CAN通信是否成功的首要内容。图313所示为本科毕业设计说明书(论文)第18页共24页设计程序执行通信基本流程图,其基本设计思路为通信初始化,这里需要注意的是CAN通信一般为8字节通信,每8字节为一个通讯信息,所以需要注意数据发送与接受寄存器的初始化;数据处理,包括检测、握手、标识;屏蔽响应包括屏蔽、真值表下达、回告。开始初始化握手24V110V屏蔽真值表下达启动检测状态回告结束开始检测回告握手下发指令回告真值表回告停止回告结束图313程序设计通信流程图下面简单介绍下相关程序设计。
35、首先需要完成基于430单片机通信的协议声明,然后参注CAN通信协议完成通信初始化,包括通信方式、奇偶校验类型、波特率的设置;数据发送初始化,以设置发送数据的寄存器位置;数据接收初始化,设置空的寄存器以存储接受到的数据。初始化完成后,数据向CAN通讯模块正常发送,此时设计CAN接收线程程序及CAN接收判断函数子程序,这部分需要完成包括判断握手指令、测试指令、控制指令、屏蔽指令、真值表下达指令、启动检测指令在内的子程序设计,接收正常后,则根据数据信息给出相应的回告。由CAN通信协议可知,状态字88HOK,55H异常,CXHX号板故障,判断使用IF、ELSEIF语句IFMSGDATA20X88/状态
36、OK本科毕业设计说明书(论文)第19页共24页ELSEIFMSGDATA20X55/状态异常当接受线程握手通过,并最终查询到真值表并且需要下达,根据CAN通信协议,发送语句为SWITCHDEVICE_IDCASE0X81SEND_NUM0XF1BREAKCASE0X86SEND_NUM0XF6BREAK一般重发2次后判定为故障。当发送指令为24或者110时,设计初始化指令类型序号、设备ID、指令类型标识符、存储发送指令端子。设计根据ID获得箱子序号或者从容器中获取端子号语句如下CASE0X81BOX_NUM0I0WHILESEND_IMFORNODE_24_1I0IBREAK以一个24V信号为
37、例,检测、握手均正常,指令未被屏蔽,切真值表查询响应,回告发送未出现故障,则其程序执行流程图如图314所示本科毕业设计说明书(论文)第20页共24页开始启动检测握手正常判断24V指令未屏蔽真值表查询24V回告结束图31424V信号程序执行流程下图315给出设计程序调试结果,未出现逻辑错误。图315CAN通信子程序调试结果332小结该部分首先阐述了通信模块相关构成以确定软件系统设计大致方向内容,然后着重介绍了CAN通信相关知识背景以及基于CAN通信协议所完成的一系列功能子程序的设计,最后以24V信号为例,给出了信号给CAN之后按照设计程序执行的通信流程图。本科毕业设计说明书(论文)第21页共24
38、页结论本文主要探讨了电气柜主控制板软件系统的内容,并对所进行的主要设计工作进行了阐述。一个电气柜的正常工作及得出准确的检测结果离不开软件与硬件的协调运行,本课题的任务很好的解决了软件部分的设计问题,保障了控制柜的运行性,这也使得电气柜对于地铁设备检测的可靠性得到了保证。在某种层次上来说,本次课题有效的解决了地铁设备的运作可靠性问题。总的来说,本课题研究完成了以下3部分内容1)介绍了EXCEL格式数据清单内容,就表格中某部分数据结合一定的电路讲解信号的实际流通测试流程,使得数据清单中所包含的逻辑关系更加简单易懂。2)完成了EXCEL格式数据导入子程序设计内容,给出设计流程图并进行设计思路的讲解,
39、主要语句给出注解,最后也给出了程序调试结果。3)完成了通信模块中CAN通信子程序的设计任务,给出相应的设计流程图并进行设计思路的讲解,主要部分给出注解,给出正确的程序调试结果。本文紧扣课题任务书,简单分析了整个电气柜的硬件与软件系统,毕竟两者需要契合运行。在分析了软件系统的各个模块后给出了一个整体思路,确定主要设计内容,然后详细的给出了EXCEL格式数据导入子程序以及通信模块子程序的设计方案,同时这也是本次课题的设计重点。本文中,选择将表格数据当做一种数据库或者封装类来进行处理,格式的转换可以通过特定的驱动函数来完成,而且各设计单位的EXCEL数据文件格式通常是不完全相同的,在表格中数据发生变
40、化、添加或者减少时,只需要通过数据库或者封装类初始化来进行修改,这就使得系统灵活地适应多种情况而不必修改源代码,大大提高的源代码的环境适应性。在CAN通信设计部分,尤其是中断响应部分的设计与24V、110V信号处理部分的设计需要重点注意。本设计也存在着自身的不足之处,由于只研究了导入与通信部分内容,给出的设计程序多为子程序,编译只能检测逻辑错误,与实际结合检验有所欠缺。现实中控制一整套设备的运作软件内容并非只包含这两部分,故设计内容可靠性与契合性有待检测。本科毕业设计说明书(论文)第22页共24页致谢此次毕业设计是在单梁老师的悉心指导下完成的,从一开始的外文翻译选题、开题报告撰写到论文的撰写、
41、修改、最终定稿等方面单老师都给我提出了许多宝贵的指导意见。单梁老师严谨的治学态度、一丝不苟的工作精神都深深的感染了我,在做毕设的这段时间我跟老师学到了很多,这些都将使我终身受益。值此成文之际,谨向单梁老师表达我深深的敬意和衷心的感谢。在程序的设计工作及论文的撰写修稿工作中,也遇到了不少的问题,在此感谢老师办公室的学长、学姐们,你们的热心讲解和帮助使我得以更好地完成课题任务,这将会是我毕业离校后人生最美好的回忆。最后感谢我大学四年所有认识的朋友以及父母,在做毕设时面对就业找工作的压力你们给了我很大的鼓励和支持,使我得以坚持到最后,在此献上真挚的祝福并衷心的说一句,谢谢本科毕业设计说明书(论文)第
42、23页共24页参考文献1王熙雏,张淑红浅谈电气控制柜的装配工艺J价值工程,201222(9)22232何利民,尹全英电气制图与读图M北京机械工业出版社,20103王俊峰精讲电气工程制图与识图M北京机械工业出版社,20084钟奎不锈钢电气控制柜焊接工艺J机车车辆工艺,2010,120425265张自军基于TCP/IP协议的高压电气控制柜综合控制系统J工业仪表与自动化装置,2008,90636396黄维通VISUALC面向对象与可视化程序设计M北京清华大学出版社,20007乔林,杨志刚MFC与多线程编程M北京中国铁道出版社,20008徐科军,张瀚,陈智渊TMS320X281XDSP原理与应用M北京
43、北京航空航天大学出版社,20069李松,汤庸,徐海水,等最新VISUALC60程序设计教程M北京冶金工业出版社,200110夏邦贵,刘凡鑫VISUALC数据库开发实例精解M北京机械工业出版社,200611张力VISUALC高级编程M北京人民邮电出版社,200212吴金平VISUALC60编程与实践M北京中国水利水电出版,200413谢歆,赵国华VISUALC高级编程实例精解M北京国防工业出版社,200114成岩C语言与应用基础M北京科学出版社,200215郑莉C语言程序设计M北京清华大学出版社,200416何友鸣C语言程序设计M北京科学出版社,200117陈冈,VEP60数据访问中的ODBC和
44、ODBC配置技术探讨问题J微型电脑应用,2002,1810737518袁鹏飞SQLSERVER数据库应用开发技术M北京人民邮电出版社,1998176本科毕业设计说明书(论文)第24页共24页208,22227719夏邦贵,郭胜SQLSERVER数据库开发入门与范例解析M北京机械工业出版社,200425820郝涛,陆宣博基于RS485主从串口通讯协议的设计J装备制造技术,2013,3434521汤龙梅,张国安一种CAN通信接口的设计与实现J福建工程学院学报,2007,53272922邬宽明CAN总线原理和应用系统设计M北京北京航空航天大学出版社,199623孙涵芳,徐爱卿MCS5196系列单片机原理及应用M北京北京航空航天大学出版社,199624韩党群CAN控制器SJA1000及其应用J电子技术应用,2003,29(1)666925饶运涛,邹继军,郑勇芸现场总线CAN原理与应用技术M北京北京航空航天大学出版社,2003