本科毕设论文DODI.docx

上传人:b****2 文档编号:14431848 上传时间:2023-04-23 格式:DOCX 页数:80 大小:1.43MB
下载 相关 举报
本科毕设论文DODI.docx_第1页
第1页 / 共80页
本科毕设论文DODI.docx_第2页
第2页 / 共80页
本科毕设论文DODI.docx_第3页
第3页 / 共80页
本科毕设论文DODI.docx_第4页
第4页 / 共80页
本科毕设论文DODI.docx_第5页
第5页 / 共80页
点击查看更多>>
下载资源
资源描述

本科毕设论文DODI.docx

《本科毕设论文DODI.docx》由会员分享,可在线阅读,更多相关《本科毕设论文DODI.docx(80页珍藏版)》请在冰豆网上搜索。

本科毕设论文DODI.docx

本科毕设论文DODI

 

TianjinUniversityofTechnologyandEducation

 

毕业设计

 

专业:

应用电子技术教育

班级学号:

应教0611–41

学生姓名:

牛红艳

指导教师:

宋延民教授

 

二零一一年六月

 

天津职业技术师范大学本科生毕业设计

 

基于计算机界面控制的数字量

输入/输出结构板的研制

DI、DODevelopmentBasedonComputerInterface

 

专业班级:

应教0611

学生姓名:

牛红艳

指导教师:

宋延民教授

院系:

电子工程学院

 

2011年6月

 

摘要

本课题是基于STC12C5A08S2单片机,研制的可编程序控制器系统,及基于计算机界面控制的DI(DigitalInput)、DO(DigitalOutput)模块。

该模块利用STC12C5A08S2的双向可控I/O口,以实现数字量输入、输出功能。

将STC设备组与上位机(即PC机)连接,将下位机(即DI、DO、模块)采集的数据通过处理传送给主站即PC机,并由主站通过组态软件传输控制命令给从站,从站将控制命令转化为下位机可以识别的数据从而进一步控制下位机的工作。

同时,该模块还可将外界数字量信息上传至组态MCGS((MonitorandControlGeneratedSystem)画面,经处理后,由数字量输出控制。

硬件部分由程序下载口,状态显示,复位,信息通信等几部分组成,软件部分采用由MODBUS通信协议,CRC校验,数据传送等部分组成,实现可编程控制器的DI、DO模块内部程序,以及基于计算机界面控制的DI、DO模块内部程序。

本设计的工作任务是学习完成电路板硬件设计制作,学习并调试软件程序。

本装置是本人利用宋老师工作室全部成果制成,全部硬件电路及软件程序经实际工程检验无误,供有兴趣者仿制。

关键词:

STC12C5A08S2单片机;DI;DO;可编程控制器;MCGS组态软件

 

ABSTRACT

ThisissueisbasedontheSTC12C5A08S2microcontroller,thedevelopmentofadomesticProgrammableLogicControllerDI(DigitalInput),DO(DigitalOutput)module,andcomputerinterfacecontrolsystem.Themoduleiscontrolledusingtwo-waySTC12C5A08S2I/Oport,inordertoachievedigitalinputandoutputfunctions.Thecomputerinterfacemodulecanreceiveinformationonladderframe,ladderexecutablebycompilinginformation,andtheresultsreturnedtothescreen.Meanwhile,outsidethemodulecanalsobeuploadedtotheconfigurationofdigitalinformationMCGS((MonitorandControlGeneratedSystem)screen,aftertreatment,thedigitaloutputcontrol.

Thehardwarepartoftheprogramdownloadedfromtheport,statusdisplay,reset,andinformationcommunicationsofseveralcomponents,softwarecomponentsusedbytheMODBUScommunicationprotocol,CRCchecking,thewatchdogprocess,datatransmissionandothercomponents,toachieveprogrammablecontrollerDI,DOmoduleinternalprocedures,andcomputer-basedcontrolinterface,DI,DOmoduleinternalprocedures.

Thisdesigntasksistolearntocompletethecircuitboardhardwaredesign,learninganddebuggingsoftwareprograms.Thisdeviceisastudioteacher,IusealltheresultsofSongmade,allhardwarecircuitandsoftwaretestandcorrectbytheactualprojectforthosewhoareinterestedinimitation.

 

KeyWords:

STC12C5A08S2microcontroller;DI;DO;MCGScontrolsystem

;

 

 

第一章引言

本课题是基于现场总线技术来实现的现场级设备数字化的工业现场层网络通信技术,它具有较强的现场信息集成能力,组成的系统可靠性高、可维护性好,而且总线协议是开放的。

本课题基于STC12C5A08S2单片机,研制的可编程序控制器系统,及基于计算机界面控制的DI、DO模块。

该模块利用STC12C5A08S2的双向可控I/O口,以实现数字量输入、输出功能。

将STC设备组与上位机(即PC机)连接,将下位机(即DI、DO、模块)采集的数据通过处理传送给主站即PC机,并由主站通过组态软件传输控制命令给从站,从站将控制命令转化为下位机可以识别的数据从而进一步控制下位机的工作。

同时,该模块还能与上位机MCGS组态互联,以控制基于AVR/STC单片机的设备,在系统中作为从站连接到网络来完成通讯和控制功能。

本文主要介绍了整个系统的硬件及软件的实现。

主要内容包括以下部分:

1、项目的需求分析和总体设计。

2、DI板的研制

3、DO板的研制

4、MODBUS协议分析。

5、各模块的测试——其功能是进行转接板和STC控制器之间的通讯,确保信息能有效正确的传输到目的地。

控制系统由一台上位机,一台中位机,若干台下位机(控制器),32个继电器和RS一485通讯接口和传感器装置MCGS网络服务器等部分组成。

下面对控制系统各部分分别进行介绍。

(1)上位机采用工控机,用高级语言C语言编制界面软件。

其处理下位机的工作状态、停止状态或故障状态。

(2)控制器的核心部分,即中位机,采用可编程序控制器,可执行高速数据处理、数据传送、算术运算、专用计数器、定时器、以及专用的A/D转换器等功能。

它具有RS一232和RS一485通讯口,通讯功能强,可与上位机、下位机进行有效通讯,所有输入点均为光电隔离,输出点为继电器驱动。

在本系统中,由于可编程控制器处于中间位置,它既要负责与上位机PC和下位机控制器交换信息,又要按照现场工艺要求完成总体的逻辑控制,这就要求可编程控制器的功能应比较强,本系统中可编程控制器的基本配置如下。

输入:

32点模块数输出:

32点模块数

(3)下位机(控制器)采用STC12C5A08S2单片机作核心,具备单独的输入按键以及显示器,独立完成输入信号的采集工作。

(4)RS一485通讯接口部分采用多机通讯技术,使用上位机原有的串行口与中位机,中位机与多台下位机进行联络。

(5)MCGS是众多监控软件中的一种,是一套用于快速构造和生成计算机监控系统的组态软件,它能够在基于Microsoft的各种32位Windows平台上运行,通过对现场数据的采集处理,以动画显示、报警处理、流程控制和报表输出等多种方式向用户提供解决实际问题的方案,在工业控制领域有着广泛的应用。

 

第二章数字量输入(DI)模块

数字量输入(DigitalInput,DI)模块分为硬件部分和软件部分,协同完成工业设备上数字量的采集工作。

把数字量输入模块拆开,我们可以看到,其实它是分两个板的,下面分别介绍。

如图2-1是数字量输入模块实物图。

图2-1数字量输入模块实物图

2.1数字量输入(DigitalInput,DI)部分工作原理

数字量输入模块拆开,它是分两个板的,称之为数字量输入模块CPU板(DICPUboard)和数字量输入模块采集板(DIacquisitionboard),其中,数字量输入模块CPU板位于上层。

而下层则是数字量输入模块采集板。

它们之间通过接插件连接。

通过数字量输入可以实现数字量的外部24V电平信号的采集的功能。

在本课题中,上层板CPU板和下层板采集板通过J1、J2和J3三个接插口连接。

完成两个板之间的数据传输功能。

在工业设备上,将需要采集的数据连接到数字量输入端口,端口采集的数字量经过电压转换,然后通过J1和J2传至STC单片机,并通过端口状态显示灯显示。

经STC单片机处理数字量,处理后经过485通讯口传送至总线。

原理图的设计都是在ProtelDXP2004软件中设计的。

 

2.1.1输入板下层板原理图

图2-2输入模块下层板采集板电路原理图

2.1.2输入板下层板原件清单

表2-1输入下层板板电路的原件清单

序号

名称

封装

数量

阻值

1

电容

CC3216-1206

32

0.1uF

2

电阻

CR2012-0805

32

4K7

3

光电耦合器

DIP-4

32

4

电阻

CR2012-0805

32

1K

5

电阻

CC3225-1210

32

10K

6

10孔端子排

PCBComponent_1

2

7

5孔端子排

PCBComponent_1

2

8

4孔端子排

PCBComponent_1

2

9

4×2排针

HDR2X4_CEN

1

10

8×2排针

HDR2X8_CEN

2

11

九针串口

DSUB1.385-2H9

1

图2-3数字量输入模块采集板

2.1.3输入板下层板工作原理

下面对DI模块原理图设计做详细介绍。

图2-4输入底板的设计

【1】32个输入端口采集的+24V数字量,经过光电耦合器转换为+5V数字量。

当输入电信号加到输入端发光器件LED上,LED发光,光接受器件接受光信号并转换成电信号,然后将电信号直接输出,或者将电信号放大处理成标准数字电平输出,这样就实现了“电-光-电”的转换及传输,

在图2-4中,光电耦合器输入端的两个电阻起到分压作用,为光耦的输入部分既发光二极管提供1.5--2V电压,工作电流3-5mA。

根据光耦的导通原理,当D2、D3的端接入24V地低电平时,接通发光源的左边电路就会导通,发光二极管发光,此时,受光器就会导通产生电流。

由于受光器的导通后的电阻很小可以忽略,使in24、in25端相当于直接连接5V高电平,即把有效的高电平数据信号传入上层板单片机,并作处理。

同时外界对应的指示灯点亮。

同理,当D2、D3端接入24V时,发光源不导通,不会发光,受光器就不会产生光电流,使in24、in25端相当于直接连接(5V地)低电平,此时和没有工作时的状态是一样的,单片机不处理数据。

光电耦合器有电平转化的作用,输入端的10K电阻使光耦内部的发光二极管工作在正常电压电流范围内(正常的工作电压1.5-2V,工作电压3-5mA),输出端口的电阻4.7k为上拉电阻。

输入口1K的电阻和0.1uf的电容组成RC滤波器,对输入端进行滤波。

【2】通讯板卡中有485通讯连接端口,见图2-5。

此为数字量输入模块采集板的另一部分电路,从中可以看到485通讯接口和J3的接法。

图2-5MAX485通讯连接图

2.2数字量输入(DigitalInput,DI)上层板模块

数字量输入模块上层板位于上层。

即数字量输入模块CPU板(DICPUboard)。

它和数字量输入模块采集板(DIacquisitionboard),即下层板。

它们之间通过接插件相连。

CPU板电路以STC12C5A08S2为核心,主要实现状态显示、端口控制、数据处理和通讯控制的功能。

数字量输入CPU板的电路原理图见下图2-7,STC12C5A08S2是8KFlash的宏晶STC12C5A60S2系列单片机。

STC12C5A60S2系列单片机器件是1个时钟/机器周期8051单片机,低功耗、高速、高可靠、强抗静电、强抗干扰。

其主要性能如下:

高速:

1个时钟/机器周期,增强型8051内核,速度比普通8051快8-12倍;宽电压:

5.5-3.3V,2.2-3.6V;增加第二复位功能脚;增加外部掉电检测电路,可在掉电时,及时将数据保存进EEPROM,正常工作时无需操作EEPROM;低功耗设计:

空闲模式;低功耗设计:

掉电模式;工作频率:

0-35MHZ;时钟:

外部晶体或内部RC振荡器可选,在ISO下载编程优惠程序时设置8/16/20/32/40/48/52/56/60/62K字节内Flash程序存储器,擦写字数10万次以上;1280字节片内RAM数据存储器;芯片内EEPROM功能,擦写次数10万次以上;ISP/IAP,在系统可编程/在应用可编程,无需编程器/仿真器;8通道,10位高速ADC,高速可达25万次/秒,2路PWM还可当2路D/A使用;2通道捕获/比较单元;4个16位定时器,兼容普通8051的定时器T0/T1,2路PCA实现2个定时器;可编程时钟输出功能;硬件看门狗;高速SPI串行通信端口;全双工异步串行口;先进的指令集结构;通用I/O接口。

上层板电路围绕单片机展开,如图2-7所示。

单片机设有32路数据采集端口,可显示输入端口信号状态。

但信号端口的指示灯亮,表示接入的为高电平。

STC单片机内部有弱上拉,不能驱动IO,故在输出端口串联上拉电阻。

通讯端口接MAX485,用差分信号经进行数据传输。

MAX485是用于RS-485与RS-422通信的低功耗收发器,每个器件中都具有一个驱动器和一个接收器,具有限摆率驱动器,可以减小EMI,并降低由不恰当的终端匹配电缆引起的反射,实现最高250kbps的无差错数据传输。

MAX485的驱动器摆率不受限制,可以实现最高2.5Mbps的传输速率。

这些收发器在驱动器禁用的空载或满载状态下,吸取的电源电流在120uA至500uA之间。

 

 

2.2.1输入板上层板原理图

图2-7数字量输入模块上层板(CPU板)电路原理图

2.2.2输入板上层板PCB图

上层板PCB图如图2-8示。

外形设计与模块安装盒完全匹配。

单片机下载口使用串口下载,省去了下载线。

图2-8数字量输入DI上层板PCB

2.2.3输入板上层板原件清单

表2-2输入上层板板电路的原件清单

序号

名称

封装

数量

阻值

1

电容

CR2012-0805

2

22pF

2

电容

CR2012-0805

6

0.1uF

3

发光二极管

CD2012-0805

36

4

电阻

CR2012-0805

2

390Ω

5

电阻

CR2012-0805

1

200Ω

6

电阻

CR2012-0805

36

2K

7

电阻

CR2012-0805

2

5.1K

8

电阻

CR2012-0805

2

47K

9

电容

CAPPR1.5-4x5

1

10uF

10

电容

CAPPR1.5-4x5

1

100uF

11

电容

CAPPR1.5-4x5

1

47uF

12

电容

C-DJ-4

1

10uF

13

电容

CAPPR1.5-4x5

1

1uF

14

电容

CAPPR1.5-4x5

1

47uF

15

电容

C-DJ-4

1

10uF

16

单片机

TQFP44

1

17

晶振

RAD-0.2

1

18

三极管

BCY-W3/E4

1

19

4×2排针

HDR2X4_CEN

1

20

8×2排针

HDR2X8_CEN

2

21

MAX485

DIP-8

1

2.2.4输入板上层板通讯电路

STC单片机同计算机的通讯,采用的是RS485传输线,用到的相关芯片是MAX485。

图2-9是MAX485芯片的顶视图:

图2-9MAX485芯片顶视图

MAX485芯片(图2-9)是用于RS-485通讯的低功耗收发器,内含一个驱动器和一个接收器。

RS-485通讯采用屏蔽双绞线就可以连接多达128个收发器设备,组成半双工控制网络(半双工:

信号可以在载体的两个方向上传送,但不能同时在两个方向上传送的工作方式)。

管脚1(RO)为接收器输出端,管脚4(DI为驱动器输入端,与单片机连接时只需分别与单片机的RXD和TXD相连即可。

和DE端分别为接收和发送的使能端,当

为逻辑0时,器件处于接收状态;当DE为逻辑1时,器件处于发送状态。

A端和B端分别为接收和发送的差分信号端,当A引脚的电平高于B时,代表发送的数据为1;当A的电平低于B端时,代表发送的数据为0。

与单片机相连时RS-485的A、B端一般可选100Ω的电阻。

VCC端和GND端分别接+5v电源和地。

图2-10是由MAX485芯片完成485通讯的原理图。

图2-10通讯模块电路图

485芯片使能的设计:

RS-485芯片工作在半双工状态,所以接收和发送的使能端一起接到三极管8550的集电极,当集电极输出高电平时处于发送状态;当集电极为低电平时,处于接收状态。

8550作用:

8550PNP三极管基极与单片机的TXD(PD3)端相接,通过三极管的开关作用来触发其接收发送使能。

当TXD输出高电平时,集电极输出高电平,处于发送状态;当TXD输出低电平时,集电极输出低电平,处于接收状态。

J3排针:

连接CPU板和数字量采集板,二极管D1起到稳压作用,防止上电时电压过高烧坏芯片。

当需要向计算机传送数据时,PD3输出高电平,使MAX485的管脚3为高电平,使能发送端。

从计算机PD2输出的0或1信号经过MAX485“解释”为端口A和端口B的电压差,计算机从总线上A和B的电压差获取数据。

这样,就完成了由芯片到计算机的数据传输。

数字量输入模块不是一直读取端口状态然后发送到计算机的。

它读取端口状态是受计算机控制的。

当计算机发送的指令要求它读取端口状态时,它才会这么做。

下面我们看一下数字量输入模块接收命令的过程。

数字量输入模块接收计算机的命令,也是通过MAX485从RS485传输线接收。

对照图,芯片的发送和接收数据是相反的过程。

当STC12C5A08S2芯片处理完其它过程,等待从总线接收数据时,PD3输出低电平,使能了MAX485的接收功能,此时,端口A和端口BD的电压差被解释成0和1,由芯片的PD2接收,当接收的内容为一个字节时,保存到芯片内的UDR寄存器,然后改变响应标志位的状态。

等到所有的字节都接收完后,通过了命令的检查,才会经历上面的数据采集、处理和传输过程。

2.2.5输入板上层板端口状态显示电路

图2-11端口状态显示电路

我们以图2-11端口状态显示电路的P20端口说明其工作原理

以其中一部分说明其工作原理。

以图2-12所示,当P20为低电平时,发光二极就会发亮。

其它端口的情况相同,所有二极管采用共阳极的连接方式。

电阻的大小是根据发光二极管的压降(一般为1.5--2V,其工作电流一般取3-5mA为宜)而选择的,电阻的大小应该满足使发光二极管工作在适当的电流,以提高发光二极管的寿命。

图2-12部分端口显示电路

2.2.6输入板上层板晶振模块

晶体振荡电路:

XTAL1与XTAL2分别为用作片内振荡器的反向放大器的输入和输出,这个振荡器可以使用石英晶体,也可以使用陶瓷谐振器。

熔丝位CKOPT用来选择这两种放大器模式的其中之一。

C1和C2的数值要一样,不管使用的是晶体还是谐振器。

最佳的数值与使用的晶体或谐振器有关,还与杂散电容和环境的电磁噪声有关。

图2-13晶振电路的设计

2.2.7输入板所用I/O口

图2-14数字量输入模块所用的IO口设计

2.3输入板硬件制作

首先要准备一个25W或者35W的电烙铁,烙铁头要细。

还要一卷比较细的焊锡丝,最好是直径为0.5mm左右。

助焊剂和清洗剂也是必备的焊接工具。

焊接时,先将电烙铁插上,待烙铁发热了之后,将助焊剂涂在PCB上需要焊接的地方。

先烫化一点焊锡丝在一个焊盘上,然后用镊子夹住器件和焊盘位置重合,再烫化有焊锡丝的焊盘将元件固定住。

其余的管脚依次焊上。

焊接时应先焊管脚比较多的贴片元件,比如贴片电阻,其次是电容、11.0592MHz晶振。

最后是直插件。

焊好后用刷子蘸上清洗剂将电路板清洗干净,再用万用表测量电源的正负极,确保电路板不可能短路。

 

2.4输入板硬件调试

1、将上层板与下层板对接后,用万用表欧姆X1档检测是否有短路。

接上电源(5V端与24V端都接上),将导线一端接24V地,一端接待测输入点,观察对应的指示灯是否亮。

2、下载程序测试。

测试DI模块只要控制管脚和串口1通讯就可以,可设置程序为采集端口数据由串口发送,通过串口调试助手查看。

测试时,底板需要测试哪个点,就用短接线将其接地,相应的指示灯亮,则将采集的端口处数据设为‘1’,反之设为‘0’。

定时采集的数据都发送给主机。

若测试某一点指示灯不亮,则先检查上层板的指示灯,然后再用万用表检测底层板。

 

第三章数字量输出(D0)模块

数字量输出(DigitalOutput,DO)模块也是由上层板和底层板组成。

数字量输入模块可以采集工业设备上的数字量信号,然后传送给计算机;数字量输出模块则是相反的过程,接收计算机的命令,然后发送给工业设备。

把数字量输出模块和数字量输入模块做一下对比的话,会发现它们大部分相似:

它们的上层板完全一样,只是下层板有稍微的区别。

3.1数字量输出(DigitalOutput,DO)部分工作原理

我们已经知道了数字量输入模块的工作过程。

数字量输出模块输出数字量的工作过程和数字量输入模块的工作过程正好相反。

计算机发送命令给数字量输出模块CPU板,数字量输出模块CPU板通过J1、J2向下层板传递数据,传递的数据通过电压的转换和放大芯片的驱动放大,传递数字量控制信息给工业设备。

和数字量输入模块基本是一样的。

数字量输出模块也以STC12C5A08S2为核心。

其中32条口线定义为输出口线,外接光电转换器保证其外部电路为标准24V直流供电。

其串口设为RS485接收状态,使用485发送接收核心芯片,可以提供高阻抗系统,保证电平输出的有效性。

并且以MODBUS协议为数据载体,使数据的可靠性得到充分的保证。

下面介绍数字量输出板的下层板,而上层板可以参考数字量输入模块的上层板,这里不再赘述。

 

3.1.1输出板下层板原理图

图3-1数

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

当前位置:首页 > 表格模板 > 合同协议

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

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