基于单片机的微型PLC的研究毕业设计.docx

上传人:b****5 文档编号:6699499 上传时间:2023-01-09 格式:DOCX 页数:54 大小:1.67MB
下载 相关 举报
基于单片机的微型PLC的研究毕业设计.docx_第1页
第1页 / 共54页
基于单片机的微型PLC的研究毕业设计.docx_第2页
第2页 / 共54页
基于单片机的微型PLC的研究毕业设计.docx_第3页
第3页 / 共54页
基于单片机的微型PLC的研究毕业设计.docx_第4页
第4页 / 共54页
基于单片机的微型PLC的研究毕业设计.docx_第5页
第5页 / 共54页
点击查看更多>>
下载资源
资源描述

基于单片机的微型PLC的研究毕业设计.docx

《基于单片机的微型PLC的研究毕业设计.docx》由会员分享,可在线阅读,更多相关《基于单片机的微型PLC的研究毕业设计.docx(54页珍藏版)》请在冰豆网上搜索。

基于单片机的微型PLC的研究毕业设计.docx

基于单片机的微型PLC的研究毕业设计

摘要

可编程逻辑控制器(PLC),是一种为工业控制特别设计的专用计算机。

因为它易于设计和编程,运行可预估,甚至在恶劣的环境下还可以保持正常的工作,所以广泛运用于工业控制。

本课题在分析主流PLC的体系结构、工作原理的基础上,设计了一个基于单片机的微型PLC,目的是在小型控制系统中能够代替小型PLC,实现更加灵活的应用方案并在保证可靠性的基础上大大降低成本。

本课题设计的系统在硬件设计上参照PLC的体系结构,在单片机的基础上扩展了丰富的外围设备,实现了PLC的大部分功能模块,包括中央处理器(CPU)、电源模块、振荡电路、复位电路、数字量I/O、串口通信等,并设计了专门的输入输出点处理电路,使系统具有良好的抗干扰特性和驱动能力。

软件设计上分为实验部分和实际运用部分。

实验部分是用C语言与汇编语言编写的,测试了PLC控制板的可行性。

实际运用部分为了使编程简单通过GXDeveloper编程软件编写梯形图,再通过PMW-HEX转换软件将其转换为单片机语言,再通过STC_ISP软件将其下载到基于STC90C52单片机的微型PLC控制板上。

基于单片机的微型PLC的设计,提供了更灵活的软、硬件方案,并大大降低了控制系统的成本,具有较高的实用价值。

 

关键词微型PLC,单片机,GXDeveloper,PMW-HEX,STC90C52

 

ABSTRACT

Programmablelogiccontroller(PLC),isaspecial-purposecomputerforindustrialcontroldesign.Becauseitiseasytodesignandprogramming,runningcanbeestimated,evenintheworstofcircumstancescanalsomaintainnormalworking,sowidelyusedinindustrialcontrol.

AnalysisofthisissueinthemainstreamofPLCsystemstructure,workingprincipleandonthebasisofcommoninstructions,designbasedonsingle-chipmicro-PLC,isaimedatsmalltoreplacesmallPLCinthecontrolsystem,formoreflexibleapplicationonthebasisoftheprogrammeandinensuringthereliabilityofsignificantlyreducingcosts.

ThistopicsdesignofsysteminhardwaredesignShangreferencePLCofsystemstructure,insingletabletsmachineofFoundationShangextendedhasrichofperimeterdevice,implementationhasPLCofmostfunctionmodule,includingcentralprocessingunit(CPU),andpowermodule,andoscillationcircuit,andresetcircuit,anddigitalvolumeI/O,andserialcommunications,,anddesignhasspecificallyofenteredoutputpointsprocessingcircuit,makessystemhasgoodofanti-interferencecharacteristicsanddriveability.Micro-PLCbasedonsingle-chipdesign,providingamoreflexiblesoftwareandhardwaresolutions,anddramaticallyreducethecostofcontrolsystem,hasahighpracticalvalue.Experimentalpartandthepracticalapplicationofsoftwaredesignisdividedintosections.Experimentalsectioniswrittenincandassembler,testthefeasibilityofthePLCcontrolpanel.PracticalapplicationofparttomakeprogrammingsimplerbyGXDevelopersoftwarewritingladder,thenPWM-HEXlanguageconversionsoftwaretoconvertittoasingle-chip,thenthroughtheSTC_ISPsoftwaretodownloadittoaSTC90C52basedonasingle-chipmicro-PLCcontrolpanels.

 

Keywordsmicro-PLC,singlechip,GXDeveloper,PWM-HEX,STC89C52

 

 

1绪论

1.1课题的背景

可编程逻辑控制器(PLC),又称为可编程控制器(PC),是一种为工业控制特别设计的专用计算机。

因为它易于设置和编程,运行可预估,甚至在恶劣的生产环境下还可以保持正常的工作,所以广泛应用在各种机械设备和生产过程的自动控制系统中,成为一种最重要、最普及、应用场合最多的的工业控制装置,成为工业自动化领域强有力的工具,并与机器人、CAD并称为工业生产自动化的三大支柱。

在所有的PLC种类中,微型PLC是占有市场份额最大的一种。

微型PLC是指I/O点数少于64点的PLC,这一类PLC主要应用于单台设备的控制,在纺织机器、数控机床、小型包装机械等设备上运用广泛。

微型PLC的应用比例占到所有PLC产品的40%以上。

我国PLC市场绝大部分被国外的产品所占领,主要是欧美、日韩等发达国家,国产占有率很低,国内PLC的制造厂家基本上以合资企业为主,拥有自主知识产权的国内厂家很少。

这主要是由于PLC的核心技术被发达国家垄断,尤其是CPU模块,而CPU模块又是PLC工作的核心部件。

近几年来,随着微控制器技术的发展,高性能单片机层出不穷,功能日益强大,由于产量的大幅增加成本也不断降低,使我们可以考虑使用现成的高性能的单片机作为CPU模块来研发具有自主知识产权的PLC。

由于微型PLC的研发相对比较容易且应用最为广泛,因此我们可以考虑从微型PLC入手,设计一个基于单片机的微型PLC,实现普通PLC的精简控制功能。

1.2课题研究的意义

设计基于高性能单片机的微型PLC,实现普通PLC的主要控制功能,具有以下几方面的意义:

实用价值

在工业控制中,需要小型控制系统的的场合大量存在的。

如电梯的升降系统、小型疲劳试验机的控制系统等等。

这些场合的共有特点是需要控制的点数不多,一般输入输出的总和只有20到40点,而且基本上是以逻辑控制为主。

经济价值

如上所述的小型控制系统的背景下,系统的成本控制往往占有有重要的地位,对于系统不但要求实现控制目标,往往也要节约成本。

目前市场上各大PLC厂商都提供微型PLC用于小型控制系统,但他们价格普遍较高,最精简的也在千元以上。

而以单片机为核心的通用控制器,只需几百的成本,如量产成本更低。

因此基于单片的微型PLC的研究具有很高的经济价值。

社会价值

我国虽然PLC市场庞大,但是90%以上的市场都是被外国品牌占据,其中大型PLC市场被欧美占据,小型PLC市场被日系品牌占据,国内厂商的市场份额几乎没有。

因此大力发展以单片机为CPU的微型PLC可以打开国外厂商和合资企业的垄断局面,对于推动国内PLC市场具有深远意义。

基于上述分析,研究基于单片的微型PLC具有非常的现实意义。

本文所研究的课题就是在这方面做一尝试,希望用单片机为CPU来做微型PLC。

1.3课题研究的内容

本课题的主要任务是通过研究PLC系统的工作原理以及PLC编程语言的特点等,设计一个基于单片机的微型PLC,能够实现普通PLC的大多数功能,满足工业控制要求。

系统在硬件设计上参照PLC的体系结构,在单片机的基础上扩展了丰富的外围设备,实现了PLC的大部分功能模块,包括中央处理器(CPU)、电源模块、振荡电路、复位电路、数字量I/O、串口通信等,并设计了专门的输入输出点处理电路,使系统具有良好的抗干扰特性和驱动能力。

软件设计上分为实验部分和实际运用部分。

实验部分是用C语言与汇编语言编写的,测试了PLC控制板的可行性。

实际运用部分为了使编程简单通过GXDeveloper编程软件编写梯形图,再通过PMW-HEX转换软件将其转换为单片机语言,再通过STC_ISP软件将其下载到基于STC90C52单片机的微型PLC控制板上。

1.4本章小结

本章首先介绍了本课题提出的背景,然后从三个方面分析了本课题研究的意义,最后指出了课题研究的内容。

 

2系统硬件设计

2.1硬件设计总述

硬件设计主要是设计外围电路,特别是设计I/O接口。

系统硬件设计如图2.1所示。

本次设计的硬件部分这要有五个部分:

输入电路、输出电路、振荡和复位电路、电源转换电路、串口通信电路。

图2.1硬件设计图

本次设计用STC90C52单片机设计了一个16输入14输出的简单PLC。

该PLC含有10个定时器和10个计数器,每个定时器的最长定时时间为3276.75秒,每个计数器的最大计数值为65535。

该PLC的输入方式为直流开关量,输入电压为24V。

输出采用继电器输出方式,采用JT继电器JT32F-024-HS,该继电器是小型、小功率继电器,触点形式是常开型,额定电压为DC24V,直流电阻为1Ω,吸合电流为2A,释放电流也为2A,线圈功率为4W,额定工作频率为5Hz。

为了提高系统的抗干扰能力,输入输出电路中都使用了光电耦合器。

光电耦合器采用FL817C。

该PLC具有与计算通讯能力,可以在计算机上下载程序。

输入端口X0-X7,X17-X10分别于单片机的P0.0-P0.7,P2.0-P2.7通过输入电路相连接。

输出端口Y0-Y7,Y10-Y15分别于单片机的P1.0-P1.7,P3.2-P3.7通过输出电路相连接。

+24V是输入电源,电源与输入端口间可以接开关等开关量输入装置。

输出端口和yCOM端之间接用户的控制电路,可以是简单的LED灯,也可以是直流电机、交流电机。

用户控制电路中的电源可以是直流也可以是交流。

根据输入端口的状态,单片机运行梯形图程序(已转换成单片机可执行的语言),控制输出端口的状态。

对于用户而言,只需知道30个外接的端口,至于输入输出电路以及单片机与这些电路的连接,用户无需了解。

这样便实现了一个用单片机制作的简单PLC。

2.2单片机最小系统

PLC控制系统的主要功能是实现各种逻辑和过程控制,因此硬件对输入输出接口有相当高的要求。

CPU是PLC的核心,起神经中枢的作用,CPU的运行速度和内存容量是PLC的重要参数,决定着PLC的工作速度、I/O数量及软件容量等,因此也限制着控制规模。

用单片机实现PLC,其CPU实际上就是单片机,因此选用合适的单片机对于最终实现的PLC的功能影响很大。

本次设计使用的单片机是STC90C52。

STC90C52是WINBOND公司生产的低电压,高性能CMOS8位单片机,片内含8KB的可反复擦写的Flash只读程序存储器和256bytes的随机存取数据存储器(RAM),器件采用高密度、非易失性存储技术生产,与标准MCS-51指令系统及8052产品引脚兼容,片内置通用8位中央处理器(CPU)和Flash存储单元,功能强大STC90C52单片机适合于许多较为复杂控制应用场合。

STC90C52单片机为制作PLC应用提供了灵活且低成本的方案。

其最小系统设计如图2.2所示。

图2.2单片机最小系统

2.2.1振荡电路

单片机系统里都有晶振,结合单片机内部电路产生单片机所需的时钟频率,单片机晶振提供的时钟频率越高,那么单片机运行速度就越快,单片机的一切指令的执行都需要单片机晶振提供的时钟频率。

图2.3振荡电路图

单片机晶振的作用是为系统提供基本的时钟信号。

通常一个系统共用一个晶振,便于各部分保持同步。

本设计使用12MHz的晶体振荡器作为振荡源,由于单片机内部带有振荡电路,所以外部只要连接一个晶振和两个电容即可,电容容量一般在15pF至50pF之间。

2.2.2复位电路

复位操作是单片机的初始化,其作用是时CPU和系统其他部件都处于一个确定的初始状态,系统从这个状态开始工作。

单片机有复位信号引脚RST,用于从外界引入复位信号。

单片机的复位电路比较简单,如图2.4所示,RESET接单片机RST引脚。

在单片机调试或程序运行时,若遇到死机、死循环或程序“跑飞”等情况,按下复位键S1,单片机就将重新启动。

完成复位操作共需24个状态周期。

复位结束后,单片机从地址0000H开始执行程序。

图2.4复位电路

图2.4中,RESET接单片机RST引脚。

按键S1按下后,复位端接高电平,实现电路复位。

单片机在RST端加一个正脉冲即可实现复位,在系统上电的瞬间,RST与电源电压同电位,随着电容的电压逐渐上升,RST电位下降,于是在RST形成一个正脉冲。

2.3电源设计

PLC等系统工作时,需要三种电源:

一是输入信号电源;二是内部元器件工作电源;三是负载工作电源。

电源模块在整个系统中起十分重要的作用,如果系统没有一个良好的、可靠的电源系统,它是无法正常工作的,因此电源的设计和制造十分重要。

负载工作电源是用来驱动PLC输出设备(负载)和提供输入信号的,又称用户电源。

用户电源的容量由输出设备和PLC的输入电路决定。

由于本系统中的I/O电路都有滤波、隔离功能,所以外部电源对PLC的性能影响不大。

用户电源不属于本次设计中的内容。

为了减小设计的复杂性,电源模块为系统运行提供内部工作电源,同时为输入信号提供电源。

本设计中的电源设计采用独立的DC24V—DC5V电压转换模块。

输入信号是开关量输入,输入电压是24V,电源模块将输入信号的24V电压转换成供单片机工作的5V电压。

为了减小电源的数量,在选用继电器时选用了24V的直流继电器。

电源模块的电路如图2.5所示。

DC24V—DC5V电压转换模块LM2576S。

LM系列是独立的直流/直流转换器,开关噪声小,组建电源系统非常简单方便。

图2.5系统电源

2.4输入电路

PLC为了提高系统的抗干扰能力,在输入电路部分有各种抗干扰设计。

本设计的输入电路也仿照PLC,在信号输入到单片机前进行了滤波处理,采用光电耦合将输入电源与系统电源隔开。

图2.6是输入电路逻辑意义上的示意图,图中的IN是一个子电路图,里面包含16个相同的输入电路,实际的电路如2.7所示,图2.7中只画出了一路输入,其他输入电路与之相同。

图2.6中LI1-LI16是输入状态指示灯。

两组I0+-I7+是16个输入端,当开关按钮按键按下,相应的LED就会亮。

两组I0-I7分别接单片机的P0.0-P0.7和P2.0-P2.7。

图2.6输入电路总图

本设计的输入为开关量输入。

输入电路接收工业现场输入设备的开关信号,将信号转换为PLC内部单片机可接受的低电压信号,实现PLC内外信号的电气隔离。

本设计的输入信号选用直流输入方式,该方式延时时间较短,还可以直接与光电开关等电子输入设备连接。

开关量输入模块的输入信号电压等级选择24V,适用于传输距离较近的场合。

为了提高系统的可靠性,需要考虑输入门槛电流的高低,门槛电流越高,抗干扰能力越强,传输距离也越远,文中设计保证信号为真时电流在5到7mA。

考虑到控制电路的抗干扰性能,减少设备之间的干扰,开关量输入电路的隔离采用光电耦合器。

图2.7输入电路

输入信号与单片机之间用光电耦合器FL817C隔开。

R2是限流电阻,同时与电容C1构成滤波电路,去处高频干扰。

估算输入电流约为:

(24-2)/4.7=4.7mA,光电耦合器的一次侧驱动电流一般在4.5mA以上,满足设计要求。

R3和C1构成延时电路,一次回路中输入信号有延时。

IN0连接单片机的输入端口P0.0。

在输入端X0与电源端接入用户输入电路,用户电路中都会设置开关,如果开关闭合,光电耦合器的发光二极管所在的回路导通,光电耦合器的发光二极管发光,光电耦合器的三极管导通,IN0为高电平,LI1发光,表示该输入点已经导通。

2.5输出电路

输出电路用于将单片机内部的低电压信号转换成驱动外部输出设备的开关信号,并且实现PLC内外信号的电气隔离。

本设计的输出电路为继电器输出方式,这样可以驱动交流负载,也可以驱动直流负载,使用的电压大小范围较宽,同时承受顺势过电压和过电流的能力较强。

与晶闸管输出和晶体管输出相比,唯一的缺点是触电元件动作较慢,寿命较短,不适用于频繁通断的场合。

输出电路的输出电流驱动能力必须大于PLC外接设备的额定电流,因此需要根据输出设备的电流大小来确定输出电路的输出电流。

图2.8输出电路总图

图2.8是输出电路逻辑意义上的示意图,图中的OUT是一个子电路图,里面包含14个相同的输出电路,实际的电路如2.9所示,图2.9中只画出了一路输出,其他输出电路与之相同。

图2.8中OUT0-OUT7、OUT8-OUT15接单片机的P1.0-P1.7、P3.2-P3.7。

LQ1-LQ14是输出状态指示灯。

Y0-Y7和Y10-Y15是14个输出端,用户电路接在输出端和COMX(X为0-5)之间。

图2.9输出电路

图2.9中5V电源为PLC的内部电源,24V电源为开关量输出电源,两个电源是隔离的。

图2.9中,Y0是PLC的一个输出端。

LQ1用于指示该输出点的开关状态。

输出信号与单片机之间也用光电耦合器FL817C隔开。

R1是限流电阻。

D2用以防止继电器开断时的反向电流。

D3是一个齐纳稳压管,是Q1基极和发射极之间电压稳定。

OUT0连接单片机的输出端口P1.0。

采用JT继电器JT32F-024-HS,该继电器是小型、小功率继电器,触点形式是常开型,额定电压为DC24V,直流电阻为1Ω,吸合电流为2A,释放电流也为2A,线圈功率为4W,额定工作频率为5Hz。

当OUT0接口端输出低电平时,经光电耦合器使驱动晶体管Q1导通,继电器K1得电吸合,同时LQ1发光。

当OUT0接口输出高电平,经光电耦合器使Q1截止,K1释放,LQ1熄灭。

2.6串口通信电路

本设计上位机程序下载时采用RS-232C通信接口技术,RS-232C是常用的点对点串行通信技术,采用单端信号传输方式,将PC机和单片机连接至一起,实现梯形图目标代码的下载。

通讯电路如图2.10所示。

图2.10中主要用到了芯片MAX232,该芯片是由美国德州仪器公司(TI)推出的一款兼容RS232标准的芯片。

单片机使用的是TTL电平(+5V为高电平,低电平为0V),而计算机的串口为RS-232C电平,其中高电平为-12V,低电平为+12V,RS-232C电平为负逻辑电平。

MAX232就是用来进行电平转换的。

该器件包含两个驱动器、两个接收器。

它的的9、10、11、12引脚是TTL电平端,用来连接单片机;7、8、13、14引脚是接PC机的。

图2.10串口通信电路

在图2.10中,D9、D10两个发光二极管用来指示此时是否有通信正在进行。

串口通信的数据传输过程如下:

MAX232的10脚T2IN接单片机TXD端P3.1,TTL电平从单片机的TXD端发出,经过MAX232转换为RS-232电平后从MAX232的7脚T2OUT发出,再连接到系统板上的串口座的第2脚RXD,至此计算机端接收到数据。

PC机发送数据时从PC机串口座上的第3脚TXD端发出数据,再逆向流向单片机的RXD端P3.0接收数据。

3实验软件设计

3.1系统程序结构

一个完整的PLC系统程序流程图如图3.1所示,本设计的软件部分主要是模仿PLC的循环工作。

输入采样程序和输出程序对任何应用程序都是一样的,这部分属于系统程序,但梯形图处理处理程序需要针对不同的应用编写不同的程序。

图3.1系统程序流程图

本设计的编程语言用了C语言和汇编语言两种。

汇编语言的执行效率要比C语言高,但可读性比较差。

C语言编程简洁,可读性好,但C语言会占用更多的内存资源。

C语言程序含有六个文件:

“IO.h”、“timer_counter.h”、“main.c”、“functions.c”、“timer_counter.c”和“process.c”。

头文件“IO.h”是对输入输出端口以及输入输出端口映像寄存器的声明。

头文件“timer_counter.h”是定时器和计数器的声明,定时器和计数器的定义在C文件“timer_counter.c”中。

C文件“main.c”是系统的主程序。

C文件“functions.c”中是初始化程序、输入程序、输出程序等的具体实现。

C文件“process.c”是用户编写不同控制程序的文件,该文件中内容需要用户根据梯形图程序来填写,其他五个文件不需要用户关心,用户只需要了解一些接口即可。

这种设计使用户只要关注如何将梯形图程序转换成C语言,而这种转换往往相对比较简单。

汇编语言程序只有一个文件,含有三个个部分:

预定义部分,系统函数部分和用户程序部分。

预定义部分是对输入输出端口以及输入输出端口映像寄存器的定义,还包括计数器和定时器的定义。

系统程序部分包括主函数,输入/输出函数,定时器程序个计数器程序。

用户程序是供用户根据梯形图程序填写的部分。

3.2系统主程序

系统主程序是主要是模拟PLC的循环工作方式。

主程序中调用了四个函数:

initi()是初始化程序,getIn()是输入采样程序,process()是用来翻译梯形图程序的梯形图处理程序,getOut()是输出刷新程序。

主程序如下:

voidmain()

{

initi();

while

(1)

{

getIn();

process();

getOut();

}

}

汇编程序如下

Main:

ACALLIniti

Loop:

ACALLGetIn

LCALLProcess

ACALLGetOut

SJMPLoop

汇编语言中的Initi是初始化程序,GetIn是输入采样程序,Process是用来翻译梯形图程序的梯形图处理程序,GetOut是输出刷新程序。

由以上的程序可以发现,用单片机实现PLC的循环扫描过程,在程序上比较容易实现,结构清晰,易于理解。

主程序中各个子函数的具体定义见本章以下各节内容。

3.3初始化程序

初始化程序是在系统进入循环扫描所必须的预处理。

本设计的初始化化程序主要完成以下一些工作:

输入、输出初始化,设置所有定时器的时间

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

当前位置:首页 > 医药卫生 > 基础医学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1