工控组态软件模拟系统论文大学论文.docx
- 文档编号:11264614
- 上传时间:2023-02-26
- 格式:DOCX
- 页数:63
- 大小:950.49KB
工控组态软件模拟系统论文大学论文.docx
《工控组态软件模拟系统论文大学论文.docx》由会员分享,可在线阅读,更多相关《工控组态软件模拟系统论文大学论文.docx(63页珍藏版)》请在冰豆网上搜索。
工控组态软件模拟系统论文大学论文
工控组态软件模拟系统
SimulationSystemofIndustrialControlConfigurationSoftware
摘要
随着工业自动化水平的不断提高,对工业控制的及时性、准确性和稳定性提出了更高的要求。
而工控组态软件的出现,很好的满足了工业控制的各方面的要求。
随着嵌入式系统自动化和智能化的进一步发展,在嵌入式系统平台上开发出性能良好的应用软件也显得越来越重要。
本课题正是从工业控制的要求和特点出发,基于三星公司的ARM9处理器S3C2410和嵌入式Linux操作系统平台,完成了对工控组态软件的模拟。
课题首先对底层硬件进行研究,包括驱动电机控制电路、PWM、ADC等电路的工作原理和电路图,并结合对S3C2410芯片上具体的控制管脚和寄存器的分析,在没有操作系统的平台上实现了对硬件设备的控制。
在此基础上,在Linux2.4内核下设计了各个硬件设备的驱动程序,利用内核空间和用户空间之间数据的传递以及中断的捕捉和信号发送的机制,使各个硬件能够正常运行于嵌入式Linux操作系统上。
随后,分析总结工控组态软件的特点,对模拟系统进行了整体的设计和功能的描述,并结合软件工程的设计思想,分别对系统进行了需求分析、概要设计、详细设计和测试。
概要设计中,划分功能模块,利用多线程完成了操作硬件和显示的功能,使系统结构层次更加的合理。
详细设计中,以功能键来划分处理函数,使程序流程和逻辑更加的清晰。
最后,裁剪和编译嵌入式Linux系统,在ARM9处理器上完成了应用程序的运行和调试。
本系统可以成功运行于Embest硬件平台,运行过程中,能够实时准确的监测每个硬件的状态,并能够通过控制台准确的控制外部硬件动作,完成了对一般工业控制的仿真和模拟。
关键词:
工控组态软件;S3C2410;设备驱动
SimulationSystemofIndustrialControlConfigurationSoftware
Abstract
Alongwiththedevelopmentoftheautomaticcontrolinindustry,thetimeliness,accuracyandstabilityinindustrialcontrolisexpectedtoreachahigherlevel.AndtheIndustrialControlConfigurationSoftwarecomesouttomeetthestrictdemand.What’smore,astheembeddedsystembecomesmorespecificandintelligent,developingIndustrialControlConfigurationSoftwareonembeddedplatformshowsitsextraordinarypotentialandcompetitiveness.
Accordingtothefeaturesanddemandsofindustrialcontrol,thesimulationsystemisjustaccomplishedbasedontheSamsung’ARM9processorS3C2410platformandembeddedlinuxoperatingsystem.Firstly,thesystemintroducesthecircuitdiagramofthehardware,includingthecontrolcircuitofDCmotor,PWM,ADCandsoon.AndthroughanalyzingtheconcretecontrolpinsandregistersontheS3C2410chip,thesystemsucceedsincontrollingtheperipheraldeviceswithoutaoperatingsystem.Basedonthehardware,thesystemdesignsthedevicedriversthatrunintheLinux2.4kernel.Inthedrivers,thesystemcompletesthedatatransmissionbetweenuserspaceandkernelspace,thecapturetotheinterruptandthesendingofthesignalfromthekernel.ItsuccessfullymakestheperipheralhardwaredevicesrunontheLinuxoperationsystemnormally.Afterward,thesystemanalyzesthefeaturesoftheIndustrialControlConfigurationSoftwareanddesignsthesimulationsystem’sfunctionsingeneral.Then,accordingtothetheoryofsoftwareengineering,thesystemdoestherequirementanalysis,generaldesign,detaileddesignandthetest.Ingeneraldesign,thesystemdividesthefunctionmodulesandsucceedsincontrollingthehardwareandshowingthestatusbyusingmultithreading,thestructureofthesystembecomesmorereasonable.Indetaileddesign,thesystemdividesthefunctionsbythecontrolkeysandmakestheflowandlogicgetmuchclearer.Andfinally,thesystemcutsoutthekernelandcompilestheLinuxoperationsystem,runanddebugontheARM9platform.
ThesimulationsystemcansucceedinrunningstablyontheEmbesthardwareplatform.Whenitisrunning,thesystemisnotonlyabletomonitoralltheperipherals,butalsocancontroltheexternalhardwareaccuratelybytheconsole.Thesystemhasachievedthesimulationoftheordinaryindustrialcontrol.
KeyWords:
IndustrialControlConfigurationSoftware;S3C2410;DeviceDriver
目录
摘要I
AbstractII
1文献综述1
1.1嵌入式简介及其应用1
1.1.1嵌入式系统的定义1
1.1.2嵌入式系统的技术特点1
1.1.3嵌入式系统的发展趋势1
1.2工控组态软件的简介2
1.2.1工控组态软件概述2
1.2.2工控组态软件的功能特点3
1.3课题研究的意义和目的3
1.4课题研究的内容3
2理论基础4
2.1系统相关的技术和原理4
2.1.1直流电机工作原理4
2.1.2A/D转换原理4
2.1.3IIC总线原理5
2.1.4PWM调节电机速度原理6
2.2实验平台硬件的电路连接和工作原理7
2.2.1整体硬件电路连接关系7
2.2.1L298N硬件驱动电路及连接关系7
2.2.2PWM定时器的硬件电路及连接关系9
2.2.3ADC转换器硬件电路及连接关系10
2.2.4Led硬件电路及连接关系11
2.2.5蜂鸣器原理及硬件连接关系11
2.2.6Eint0中断按键的硬件电路及连接关系12
2.2.7ZLG7290原理及硬件连接关系13
2.2.85*4键盘及数码管硬件电路及连接关系14
2.3Linux2.4内核下驱动程序设计介绍15
2.3.1设备驱动程序的作用15
2.3.2Linux设备驱动程序实现机制16
2.3.3Linux设备的分类16
2.3.4Linux下驱动程序的特点16
2.3.5Linux设备驱动的相关操作16
3系统分析18
3.1系统整体描述18
3.2系统功能分析19
3.3系统实现目标20
4系统设计实现22
4.1系统概要设计22
4.1.1系统总体框架设计22
4.1.2上层应用程序功能模块设计23
4.1.3数据库结构设计25
4.2系统详细设计26
4.2.1硬件设备驱动设计26
4.2.2应用程序整体描述34
4.2.3按键详细介绍36
4.2.4重要数据结构说明36
4.2.5程序执行流程设计37
4.3系统的运行实现42
4.3.1建立交叉编译环境42
4.3.2建立嵌入式Linux操作系统44
4.3.3系统运行实现45
5系统测试48
5.1测试方案设计48
5.1.1测试的方法理论48
5.1.2针对本系统提出的测试方案48
5.2测试结果分析50
结论51
参考文献53
致谢54
1文献综述
1.1嵌入式简介及其应用
1.1.1嵌入式系统的定义
嵌入式系统是指以应用为中心,以计算机技术为基础,软件硬件可剪裁,适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。
它主要由嵌入式微处理器、外围硬件设备、嵌入式操作系统以及用户应用软件等部分组成。
用于实现对其它设备的控制、监视和管理等功能,它通常嵌入在主要设备中运行。
1.1.2嵌入式系统的技术特点
嵌入式系统是集软件、硬件于一体的高可靠性系统嵌入式系统麻雀虽小,五脏俱全,软件除操作系统外,还需有完成嵌入式系统功能的应用软件,硬件除了CPU外,还需有外围电路支持,微处理器、微控制器、DSP已构成嵌入式系统硬件的基础。
嵌入式系统是资源开销小的高性能价格比系统嵌入式系统的发展离不开应用,应用的共同要求是系统资源开销小,由于嵌入式系统技术日益完善,各种高性能嵌入式应用系统层出不穷,它已是资源开销小的高性能价格比的一类应用系统。
为了满足系统资源开销小、高性能、高可靠性的要求,大多使用FlashMemory。
嵌入式系统是功能强大、使用灵活方便的系统嵌入式系统应用的广泛性,要求该系统通常是无键盘、无需编程的应用系统,使用它应如同使用家用电器一样方便。
1.1.3嵌入式系统的发展趋势
嵌入式应用软件的开发需要强大的开发工具和操作系统的支持。
随着因特网技术的成熟、带宽的提高,ICP和ASP在网上提供的信息内容日趋丰富、应用项目多种多样,嵌入式电子设备的功能不再单一,电气结构也更为复杂。
为了满足应用功能的升级,在采用更强大的嵌入式处理器增强处理能力的同时,还采用实时多任务编程技术和交叉开发工具技术来控制功能复杂性,简化应用程序设计、保障软件质量和缩短开发周期。
另外,随着网络的快速蔓延,联网成为必然趋势。
为适应嵌入式分布处理结构和应用上网需求,面向21世纪的嵌入式系统要求配备标准的一种或多种网络通信接口。
同时,支持小型电子设备实现小尺寸、微功耗和低成本。
为满足这种特性,要求嵌入式产品设计者相应降低处理器的性能,限制内存容量和复用接口芯片。
这就相应提高了对嵌入式软件设计技术要求。
另外,还需要提供精巧的多媒体人机界面。
1.2工控组态软件的简介
1.2.1工控组态软件概述
组态一词来源于英文单词Configuration,从组态软件的内涵上说组态软件是指在软件领域内,操作人员根据应用对象及控制任务的要求,配置(包括对象的定义、制作和编辑,对象状态特征属性参数的设定等)用户应用软件的过程,也就是把组态软件视为“应用程序生成器”。
从应用角度讲组态软件是完成系统硬件与软件沟通、建立现场与监控层沟通的人机界面的软件平台,它的应用领域不仅仅局限于工业自动化领域。
而工业控制领域是组态软件应用的重要阵地,伴随着集散型控制系统DCS(DistributedControlSystem)的出现组态软件已引入工业控制系统。
在工业过程控制系统中存在着两大类可变因素:
一是操作人员需求的变化;二是被控对象状态的变化及被控对象所用硬件的变化。
而组态软件正是在保持软件平台执行代码不变的基础上通过改变软件配置信息(包括图形文件、硬件配置文件、实时数据库等),适应两大不同系统对两大因素的要求,构建新的监控系统的平台软件。
以这种方式构建系统既提高了系统的成套速度,又保证了系统软件的成熟性和可靠性,使用起来方便灵活,而且便于修改和维护。
图1.1描述了工控组态软件的作用:
图1.1工控组态软件的作用描述图
1.2.2工控组态软件的功能特点
(1)强大的图形组态功能,界面一致性好,易学易用。
(2)提供了丰富的脚本语言函数和功能。
(3)能与多种通讯协议互联,支持多种硬件设备。
(4)提供多种数据驱动程序交换数据。
(5)有一个实时数据库作为整个系统数据处理、数据组织和管理的核心。
(6)功能模块丰富,互相独立的组织形式提高了系统可靠性和可扩展性。
1.3课题研究的意义和目的
嵌入式系统核心理念就是把计算机系统嵌入到特定对象体系中,实现智能化控制。
正由于嵌入式系统的特定性和智能化,被广泛应用于工业控制等专门领域。
而随着工业自动化水平的迅速提高,组态软件逐渐被过程自动化技术人员所熟悉。
组态软件是面向监控与数据采集的软件平台,它能根据用户对被控对象和控制目的的要求在模块间进行任意组合。
它不仅满足了被控对象的个性需求、缩短了软件开发时间并节省了开发费用,还具有实时多任务、接口开放、操作直观、使用灵活简单、功能多样、运行可靠等特点。
而采用嵌入式系统开发出的工控组态软件对对象进行过程控制,不仅可以大大提高控制的自动化水平,而且可以提高控制的及时性和准确性,从而改善劳动条件、提高产品质量及合格率。
因此,嵌入式系统下的工控组态软件有着更强的竞争力和更为广阔的市场前景。
本课题就是利用现有的实验开发平台,来进行对工控组态软件的模拟。
实现对模拟的工作现场的实时监控和对外部设备的操作控制。
1.4课题研究的内容
本课题完成在嵌入式S3C2410ARM9实验平台上,实现对工控组态软件的模拟。
从理论到实际操作需要研究学习如下内容:
(1)课题相关的技术原理,像直流电机工作原理,PWM调速原理,AD转换原理等。
(2)课题相关的硬件设备的硬件电路,在学习了解每个硬件设备工作原理的基础上着重掌握Embest实验箱相关硬件的硬件电路图,连接关系等。
(3)嵌入式Linux操作系统下驱动程序的开发设计,开发出独立的能够驱动硬件正常工作地驱动程序。
(4)基于ARM-Linux嵌入式系统应用程序的开发流程和方法。
(5)系统的逻辑、数据、控制的设计和实现。
2理论基础
2.1系统相关的技术和原理
2.1.1直流电机工作原理
直流电机是通过两个磁场的互作用产生旋转。
定子通过永磁体或受激励电磁铁产生一个固定磁场,转子由一系列电磁体构成,当电流通过其中一个绕组时会产生一个磁场。
对有刷直流电机而言,转子上的换向器和定子的电刷在电机旋转时为每个绕组供给电能。
通电转子绕组与定子磁体有相反极性,因而相互吸引,使转子转动至与定子磁场对准的位置。
当转子到达对准位置时,电刷通过换向器为下一组绕组供电,从而使转子维持旋转运动。
电机的速度与施加的电压成正比,输出转矩则与电流成正比。
直流电机高效运行的最常见方法是施加一个PWM(脉宽调制)方波,其通-断比率对应于所需速度。
电机起到一个低通滤波器作用,将PWM信号转换为有效直流电平。
PWM驱动信号很常用,因为使用微处理器的控制器很容易产生PWM信号。
虽然用精确的脉冲宽度可以调节电机的速度,实际应用中的PWM频率却是可变的,设计师应对其进行优化,以防止电机颤抖,发出耳朵听得到的噪声和RFI。
如要使直流电机反转,必须转换电机中电流的方向,为此,大多数设计师采用排列成H型的4个开关装置。
2.1.2A/D转换原理
A/D转换器(Analog-to-DigitalConverter)又叫模/数转换器,即是将模拟信号(电压或是电流的形式)转换成数字信号。
这种数字信号可让仪表,计算机外设接口或是微处理机来加以操作或是工作使用。
实验箱上的ADC转换器采用的是逐次逼近法来进行模拟量和数字量的转换。
逐次逼近式A/D是比较常见的一种A/D转换电路,转换的时间为微秒级。
采用逐次逼近法的A/D转换器是由一个比较器、D/A转换器、缓冲寄存器及控制逻辑电路组成,基本原理是从高位到低位逐位试探比较,好像用天平称物体,从重到轻逐级增减砝码进行试探。
转换的过程如图2.1所示:
逐次逼近法转换过程是:
初始化时将逐次逼近寄存器各位清零;转换开始时,先将逐次逼近寄存器最高位置1,送入D/A转换器,经D/A转换后生成的模拟量送入比较器,称为Vo,与送入比较器的待转换的模拟量Vi进行比较,若Vo<Vi,该位1被保留,否则被清除。
然后再置逐次逼近寄存器次高位为1,将寄存器中新的数字量送D/A转换器,输出的Vo再与Vi比较,若Vo<Vi,该位1被保留,否则被清除。
重复此过程,直至逼近寄存器最低位。
转换结束后,将逐次逼近寄存器中的数字量送入缓冲寄存器,得到数字量的输出。
逐次逼近的操作过程是在一个控制电路的控制下进行的。
图2.1A/D转换过程
2.1.3IIC总线原理
IIC(Inter-IntegratedCircuit)总线是一种由PHILIPS公司开发的两线式串行总线,用于连接微控制器及其外围设备。
IIC总线最主要的优点是其简单性和有效性。
由于接口直接在组件之上,因此IIC总线占用的空间非常小,减少了电路板的空间和芯片管脚的数量,降低了互联成本。
总线的长度可高达25英尺,并且能够以10Kbps的最大传输速率支持40个组件。
IIC总线的另一个优点是,它支持多主控,其中任何能够进行发送和接收的设备都可以成为主总线。
一个主控能够控制信号的传输和时钟频率,在任何时间点上只能有一个主控。
IIC总线是由数据线SDA和时钟SCL构成的串行总线,可发送和接收数据。
在CPU与被控IC之间、IC与IC之间进行双向传送,最高传送速率100kbps。
各种被控制电路均并联在这条总线上,但就像电话机一样只有拨通各自的号码才能工作,所以每个电路和模块都有唯一的地址,在信息的传输过程中,IIC总线上并接的每一模块电路既是主控器(或被控器),又是发送器(或接收器),这取决于它所要完成的功能。
CPU发出的控制信号分为地址码和控制量两部分,地址码用来选址,即接通需要控制的电路,确定控制的种类;控制量决定该调整的类别(如对比度、亮度等)及需要调整的量。
这样,各控制电路虽然挂在同一条总线上,却彼此独立,互不相关。
IIC总线在传送数据过程中共有三种类型信号。
开始信号:
SCL为高电平时,SDA由高电平向低电平跳变,开始传送数据;结束信号:
SCL为低电平时,SDA由低电平向高电平跳变,结束传送数据;应答信号:
接收数据的IC在接收到8bit数据后,向发送数据的IC发出特定的低电平脉冲,表示已收到数据。
CPU向受控单元发出一个信号后,等待受控单元发出一个应答信号,CPU接收到应答信号后,根据实际情况做出是否继续传递信号的判断。
若未收到应答信号,由判断为受控单元出现故障。
IIC规程运用主/从双向通讯。
器件发送数据到总线上,则定义为发送器,器件接收数据则定义为接收器。
主器件和从器件都可以工作于接收和发送状态。
总线必须由主器件(通常为微控制器)控制,主器件产生串行时钟(SCL)控制总线的传输方向,并产生起始和停止条件。
SDA线上的数据状态仅在SCL为低电平的期间才能改变,SCL为高电平的期间,SDA状态的改变被用来表示起始和停止条件。
图2.2是IIC总线传递数据的过程:
图2.2IIC总线传递数据过程
2.1.4PWM调节电机速度原理
PWM(Pulse-Width Modulation)是脉宽调制技术的简称。
晶体管开关器件的导通时间也被称为导通角 ,通过控制晶体管的开通与关断时间来改变导通角 的大小,就可以调节加在负载上的平均电压的大小,以实现对直流电机的调速,这就是PWM变速控制技术的基本原理。
用分立器件组成PWM电路一般来说需要如下几个部分:
三角波产生电路、脉冲调制电路、PWM信号延迟及分配电路。
S3C2410作为一款功能强大的微处理器,其内部已经集成了包含上述三个部分的PWM发生器,只要对相关寄存器进行简单的设置,就可以产生需要的PWM信号。
S3C2410的定时/计数器0~3都具有PWM输出功能,以定时/计数器0为例说明。
时钟信号PCLK经过可编程的8位预分频器和时钟除法器分频后,驱动定时器内的逻辑控制器进行工作。
逻辑控制器的核心,是一个16位的减法计数器。
我们可以赋予计数缓冲寄存器(TCNTB0) 和比较缓冲寄存器(TCMPB0)不同的初始值,当定时器使能时,这两个寄存器中的数据将被分别载入到减法计数器(TCNT0)和比较寄存器(TCMP0)。
计数缓冲寄存器和比较缓冲寄存器的设计思想在S3C2410中被称为“双缓冲”,它的优点是在频率或占空比改变时,定时器仍然能产生稳定的输出。
计时过程如下:
从PCLK过来的时钟信号到达逻辑控制器时,减法计数器的值自动减1,当减法计数器的值为0时,定时器会向CPU发送中断请求,一轮计时操作完成。
在自动装载模式下,计数缓冲寄存器中的初始值会由硬件控制自动载入减法计数器,进行下一轮的计时操作。
PWM发生器的原理:
比较缓冲寄存器(TCMPB0)中设定的初值是用来产生PWM信号的. 信号的产生规则是:
每当TCNT0的值和TCMP0的值相等时,定时器的输出逻辑电平翻转。
PWM脉冲频率由TCNT0决定,而脉冲宽度由TCMP0决定。
TCMP0的值越大,PWM脉冲的占空比越大,也即平均输出电压越大,反之亦然。
2.2实验平台硬件的电路连接和工作原理
2.2.1整体硬件电路连接关系
本系统用到了实验平台上的PWM定时器、直流电机、蜂鸣器、led、AD转化器、数码管等硬件,它们和S3C2410具体的连接关系如图2.3所示:
2.2.1L298N硬件驱动电路及连接关系
L298是一种高电压、大电流电机驱动芯片。
该芯片的主要特点是:
工作电压高(最高工作电压可达46V)、输出电流大(瞬间峰值电
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 组态 软件 模拟 系统 论文 大学