微型计算机控制的自动装箱系统DOC.docx
《微型计算机控制的自动装箱系统DOC.docx》由会员分享,可在线阅读,更多相关《微型计算机控制的自动装箱系统DOC.docx(36页珍藏版)》请在冰豆网上搜索。
微型计算机控制的自动装箱系统DOC
第一章微型计算机控制自动装箱系统概述
在工业生产中,常常需要对产品进行计数、包装。
如果用人工完成不但麻烦,而且效率低、劳动强度大。
随着微型机控制的普及,特别是单片机的应用,给该系统的设计带来了极大的方便。
在这一节里,我将介绍单片机控制包装系统的设计方法。
该系统有两个传送带,即包装箱传送带和产品传送带。
包装箱传送带用来传送产品包装箱,其功能是把已经装满的包装箱运走,并用一只空箱来代替。
为使空箱恰好对准产品传送带的末端,以便使产品刚好落入包装箱中,在包装箱传送带的中间装一光电控制器1,用以检测包装箱是否到位。
产品传送带将产品从生产车间传送到包装箱,当某一产品被送到传送带的末端,会自动落入包装箱内,并由检测器2转换成计数脉冲。
产品计数可以由硬件完成(如MCS-51系列单片机中的定时/计数器),也可以用软件来完成。
本系统用软件计数方法。
系统工作步骤如下:
⒈用键盘设置每个包装箱所装的零件数量以及包装箱数,并分别存放在PORTS和BOXES单元中。
⒉接通电源,使传送带1马达转动。
由程序控制传送带1马达持续运动,当包装箱运行到检测器1的光源和光传感器的中间时,通过检测光电传感器的状态,判断传送带1上的包装箱是否到位。
⒊当包装箱到位时,关断马达电源,使传送带1停止运动。
⒋启动传送带2马达,使产品沿传送带向前运动,并装入箱内。
⒌当产品一个一个地落入时,将产品一系列脉冲信号,用检测器2进行检测。
⒍从检测器2来的输出脉冲,由计算机进行计数,并不断地与存在PRESET单元中的给定值进行比较。
⒎当零件数值与给定值不相等时,将继续控制传送带2运动,以便继续装入零件;当零件个数与给定值相等时,停止传送带2马达,不再装入零件。
⒏再次启动传送带1的马达,使装满零件的箱子继续向前运动,并把存放箱子数的内存单元加1,然后再与给定的箱子数进行比较。
如果不够,则带动下一个空箱到达指定位置,继续上述过程。
如果箱子数量与给定值相等,将停止包装,等待新的操作命令。
当传送带2上的零件和传送带1上的箱子足够多时,这个过程可以继续不断地进行下去。
这就是产品自动包装生产线的流程。
必要时,操作人员可以随时通过停止键(STOP)键停止传送带运动,并通过键盘重新设置给定值,然后再启动。
第二章系统的总体方案
2.1系统硬件方案的确定
包装箱传送带和产品传送带
包装箱传送带用于传送包装箱,将已经装满的包装箱运走。
并随后传送来一个空箱,继续将产品装箱,如此循环生产下去。
产品传送带用于输送产品。
当某一产品从生产车间传送出来,会一直送到传送带的末端,自动落入包装箱。
2.2系统软件方案的确定
生产线的控制顺序
(1)预置设定:
用键盘分别设置每个包装箱所装的产品数和包装箱数,并分别存放在PORTS和BOXES单元中。
(2)箱体检测:
接通电源,使传送带1的传动电机启动,传送带上的包装箱随之位移。
当包装箱随着传送带移动到传感器1(光电传感器)的检测位置时,传感器有输出信号,由它可以判断出包装箱是否到位。
(3)箱体到位:
当传感器判断出包装箱到位并输出控制信号时,系统立即关断包装箱传送带电机电源,使传送带1停止运动,实现了箱体到为控制。
(4)产品装箱:
启动传送带2的传动电机,使产品随传送带2运动,并装入箱内。
(5)产品计数:
在产品装箱的同时,随产品一个个地落入箱内,传感器2便输出一系列反映产品数量的脉冲信号,供计数器个、和控制器用。
(6)计数比照:
产品计数脉冲输入到单片机系统之后,由单片机记数,并不断与存储器在PRESET单元中的给定值进行比较和对照。
(7)满箱控制:
当装箱的产品数量小于已经设定的产品给定值时,传送带2继续运转,产品继续装如包装箱;当产品数量等于给定值时,表明产品满箱,传送带2停止运行,产品装箱停止。
(8)箱数比较:
控制系统再次启动传送带1的传动电机,使装满产品的箱子向前移动,并把存放箱子数(即满箱数的预置数)的内存单元中加1,然后再不断的与存放箱子的数量进行比较。
(9)箱数控制:
如果单片机控制系统内存单元的箱子数值小于预置数量,则传送带1带动下一个空箱到达指定位置,继续重复上述过程;如果箱子数与预置数相等,将停止包装,等待新命令。
第三章微型计算机硬件电路及其设计
3.1微型计算机主要芯片简介
3.1.1主机(CPU)
微型计算机控制系统的主机是指中央处理器(CPU),它是整个控制系统的核心。
主机根据输入设备送来的反映生产过程工作状况的各种信号,以预定的控制算法,自动地进行信息处理和运算,选定相应的控制策略,并通过输出设备向生产过程发送控制命令。
对被测参数进行巡回检测、数据处理、控制计算、报警处理以及逻辑判断等是主机的几个主要职能。
显然,主机是微型计算机控制系统最重要的组成部分,它的选用将直接影响到系统的功能及接口电路的设计。
目前最常用的主机有Intelpentium及单片机MSC-51、MSC-96系列等。
由于单片机种类繁多、功能各异,因此,在选用单片机做为主控芯片时,接口电路的设计成为十分重要的课题。
3.1.2I/O接口与输入输出通道
I/O接口是主机与被控制对象或外设进行信息交换的桥梁。
目前,微机和单片机的大部分I/O接口电路都是通用的可编程标准I/O接口,其工作方式可由程序进行控制。
常用的可编程标准I/O接口有:
并行接口8155或8255,串行接口8251,DMA控制器8237,中断控制器8259,定时/计数器8253等。
由于计算机只能处理数字量,而一般的生产过程被测参数大都为模拟量。
因此,为了实现计算机控制,还必须把模拟量转化成数字量,这由A/D转换即模拟量输入通道实现;同样,执行机构不少为模拟量控制,所以计算机输出的数字量必须变换成模拟量,这由D/A转换即模拟量输出通道实现。
3.1.3通用外部设备
通用外部设备主要是为了扩大主机的功能,它们用来显示、打印、存储及传送数据。
常用的外部设备按功能可分为三类:
输入设备,输出设备和辅助存储设备(外存)。
常用的输入设备是键盘、终端和扫描仪,用来输入程序、数据和操作命令。
常用的输出设备是打印机、各种显示器、绘图机,它们以字符、曲线、表格和图形等不同方式显示和反映生产过程状况和控制信息。
常用的辅助存储器是磁盘和磁带,它们兼有输入和输出两种功能,用来存放程序和数据,作为主存储器的后备辅助存储设备。
这些外设从各方面扩充了主机的功能。
3.1.4传感器及执行机构
为了对生产过程进行控制,首先必须对温度、压力、流量、液位等各种现场数据进行采集,并把非电参量转换成电参量,这个任务由检测元件,即传感器完成。
如利用热电偶把温度转换成毫伏级电压信号;用压力传感器把压力变成电信号。
这些信号经变送器转换成统一的标准电信号(0~5V电压或4~20mA电流)之后,再送入A/D通道进行模/数转换后送入计算机。
因此,检测元件精度的高低,直接影响控制系统的精度。
执行机构的作用是控制生产要素的输入量。
例如,在温度控制系统中,控制进入加热炉的煤气(或油)量;在水位控制系统中控制进入容器的水的流量。
执行机构有电动、气动、液压传动等形式,有的采用交直流电机、步进电机或可控硅等。
3.1.5操作台
操作台是人-机对话的纽带。
操作员通过它可以向计算机输入程序,修改内存的数据,显示被测参数以及发出各种操作命令等。
操作台一般由以下四个部分组成:
(1)作用开关。
诸如电源开关、数据及地址选择开关以及操作方式选择开关(如自动/手动)等。
作用开关通过接口与主机相连,通过这些开关,人们可以对主机进行启动、设置和修改数据以及修改控制方式等。
(2)功能键。
用以向主机申请中断服务,常用的有复位键、启动键、打印键、显示键、工作方式选择键(如连续/单步)等。
(3)LED数码管及CRT显示。
用来显示被测参数及操作人员感兴趣的其他内容。
目前,CRT显示的应用越来越普遍,因为它不但可以显示数据表格,而且能够显示被控系统的流程总图、棒状指示图、开关状态图、时序图、变量变化趋势图、调节回路指示图,还能报警、索引,功能比LED显示强大的多。
(4)数字键。
用来送入数据或修改参数。
3.2MCS-51内部结构及其引脚功能
MCS-51系列单片机芯片均为40个引脚,HMOS工艺制造的芯片采用双列直插式封装(DIP),目前大多采用此类封装方式。
图2-1是MCS-51系列芯片的引脚图。
图3-18031管脚图
3.2.1MCS-51单片机内部结构
Intel公司在80年代初推出了MCS-51系列高性能的8位单片机。
具有集成度高,系统结构简单,系统扩展方便,可靠性高,处理功能强,速度高,容易产品化等等特点。
MCS-51系列单片机的三个基本产品为8031,8051,8071。
他们的引角与指令系统完全兼容,仅在内部结构及应用方面存在一些差异。
1、中央处理单元(8位)
数据处理、测试位,置位,复位位操作
2、只读存储器(4KB或8KB)
永久性存储应用程序,掩模ROM、EPROM、EEPROM
3、随机存取内存(128B、128BSFR)
在程序运行时存储工作变量和资料
4、并行输入/输出口(I/O)(32条)
作系统总线、扩展外存、I/O接口芯片
5、串行输入/输出口(2条)
串行通信、扩展I/O接口芯片
6、定时/计数器(16位、加1计数)
计满溢出、中断标志置位、向CPU提出中断请求,与CPU之间独立工作
7、时钟电路
内振、外振。
8、中断系统
五源中断、2级优先。
3.3结构特点
MCS-51系列单片机为哈佛结构(而非普林斯顿结构)
1)内ROM:
4KB
2)内RAM:
128B
3)外ROM:
64KB
4)外RAM:
64KB
5)I/O线:
32根(4埠,每埠8根)
6)定时/计数器:
2个16位可编程定时/计数器
7)串行口:
全双工,2根
8)寄存器区:
工作寄存器区、在内128BRAM中,分4个区,
9)中断源:
5源中断,2级优先
10)堆栈:
最深128B
11)布尔处理机:
位处理机,某位单独处理
12)指令系统:
五大类,111条
按其功能来分,可分为三个部分:
电源及时钟引脚:
(1)电源
Vcc(40脚)接5V电源端。
Vss(20脚)接地。
(2)时钟引脚
XTALl(19脚)接外部晶体。
XTAL2(18脚)接外部晶体。
XTAL1和XTAL2是外接晶体引线端。
MCS-51单片机有4个双向的8位并I/O口:
P0~P3,每个口都有一个8位的锁存器,复位后它们的初态全为“1”。
P0端口是总线I/O端口,三态,双向,数据地址分时复用。
是由锁存器,输入缓冲器,切换开关与相应控制电路构成。
因为只有该口能直接用于外部存储器的读/写数据操作。
P0口还用于以输出外部存储器的低8位地址。
由于是分时使用,先输出外部存储器的低8位地址,故应在外部加锁存器将此地址数据锁存,地址锁存信号用ALE。
然后,P0口才作为数据口使用。
P0端口是使用最广泛的I/O端口。
P1端口是专门供用户使用的,是准双向静态口。
与P0端口相比P1端口用内部上拉电阻代替了P0端口的场效应管。
且输出的信息仅来自内部总线。
由内部总线输出的数据经锁存器反向和场效应惯反向后,锁存在端口线上。
所以,P1端口是具有输出锁存的静态口。
P2端口也是准双向口。
主要特点包括:
1.不能输出静态的数据。
2.自身输出外部程序存储器的高8位地址。
3.执行指令时,还输出外部的高位地址,故称P2端口为动态地止端口。
P3端口是双功能口,也是准双向口。
该口的每一位均可独立地定义为第一I/O口功能或第二I/O口功能。
作为第一功能使用时,口的结构与操作与P1口相同。
表2-3中表示了P3口为第二功能是各位的定义。
故称P3端口为静态双功能端口。
引脚信号的第二功能
芯片的引脚数目受到工艺及标准化等因素的限制。
例如,MCS-51系列把芯片引脚数目限定为40条,但单片机为实现其功能所需要的信号数目却超过此数,因此就出现了需要与可能的矛盾。
为解决这个矛盾,给一些信号引脚赋以双重功能。
前面介绍了信号引脚的第一功能,下面介绍某些信号引脚的第二功能。
表3.1引脚的第二功能
口引脚
第二功能
信号名称
P3.0
RXD
串行数据接收
P3.1
TXD
串行数据发送
P3.2
外部中断0申请
P3.3
外部中断1申请
P3.4
T0
定时器/计数器0计时输入
P3.5
T1
定时器1外部中断
P3.6
外部数据锁存器写选通
P3.7
外部数据锁存器读选通
3.4I/O口的写操作及负载能力
执行改变锁存器数据的指令时,在该指令的最后一个时钟周期S6P2里将数据写入锁存器。
然而输出缓冲器仅仅在每个状态周期的相位1(P1)期间采样口锁存器,因而锁存器中的新数据在下一个状态周期的P1出现之前是不会出现在输出线上的。
P1、P2、P3口的输出缓冲器可驱动4个LSTTL电路。
对于HMOS芯片单片机的I/O口,在正常情况下,可任意由TTL或NMOS电路驱动,HMOS及CHMOS型单片机的I/O口由集电极开路或漏极开路的输出来驱动时,不必外加上拉电阻。
P0口输出缓冲器能驱动8个LSTTL电路,驱动MOS电路须外接上拉电阻,但P0口用作地址/数据总线时,可直接驱动MOS的输入而不必外加上拉电阻。
当使用芯片内部时钟时,此二引线用于外接石英晶体振荡器和电容;当使用外部时钟时,用于接外部时钟脉冲信号。
3.5硬件电路中各部分的作用
本图有803174LS3732764组成了一个单片机最小系统。
为了读键盘给定植,及完成检测和控制,该设计专门扩展一个8255A可编程接口及程序存储器EPROM2764。
8255A的B口用于给定值或产品计数显示,PA口读键盘的给定值,C口高4位为输入方式,用于检测光电管和STAR,STOP两个键的状态。
C口低4位为输出位,其中PC0控制传送带1的电机,PC1控制传送带2的电机。
PC2,PC3是两个I/O口的两个指示灯。
D1,D2分别为红色,绿色指示灯,当系统没有设定给定值时,启动START键,则D1灯亮,提醒操作者设定参数后再启动;如果操作正常,则D2灯亮。
3.6传感器件的设置
为了使空箱正好对准传送带的末端,以便产品准确的落入箱内,于是在包装箱传送带的中间安装传感器1,用来检测包装箱是否到位,为了检测产品数量,在产品即将落入包装箱的位置处设置传感器2,由它检测和输出产品记数脉冲。
本设计采用的光电传感器。
图3-2产品装箱系统图
3.7自动装箱生产线的计数
产品的计数可有硬件和软件两种方式完成。
利用硬件完成可以方便的使用单片机内的定时/计数器。
本设计采用软件的方式来进行。
3.8对外信号的连接以及通过编码键盘完成给定值的设定
下图是由二极管矩阵组成的编码键盘电路。
键盘输出信号D,C,B,A(BCD码)接到8255A的A口PA3-PA0,键选通信号KEYSTROBE(高电平有效)经反向器接到8031的/INT脚。
当任何一个键按下时,与非门7420会产生一个高电平选通信号KEYSTROBE,经反相后的其下降沿向8031申请中断。
同时,该键的BCD码将出现在输出线上。
8031响应后,读入该键BCD码的数值,作为给定值并显示。
该显示的设计位数为三位,最多设定值为999,输入顺序从最高位开始当按键未按下时,所有输出端均为1。
图3-3编码键盘电路
3.9复位电路
MCS-51的复位输入引脚RST(即RESET)为MCS-51提供了初始化的手段。
有了它可以使程序从指定处开始执行,即从程序存储器的0000H地址单元开始执行程序。
在MCS-51的时钟电路工作后,只要在RST引脚上出现10mS以上的高电平时单片机内部则初始复位。
只要RST保持高电平,则MCS-51循环复位。
只有当RST由高电平变低电平以后,MCS-51才从0000H地址开始执行程序。
MCS-51的复位是由外部的复位电路来实现的。
最简单的上电复位电路如图3-2所示。
工作原理为:
上电瞬间,RC电路充电,RST引脚端出现正脉冲,只要RST端保持10mS以上高电平,就能使单片机有效地复位。
除了上电复位外,有时还需要人工按钮复位。
在实际的应用系统设计中,若有外部扩展的I/O接口电路也需初始复位,如果它们的复位端和MCS-51的复位端相连,复位电路中的R、C参数要受到影响,这时复位电路中的R、C要统一考虑以保证可靠的复位。
如果单片机MCS-51与外围I/O接口电路的复位电路和复位时间不完全一致,使单片机初始化程序不能正常运行,外围I/O接口电路的复位也可以不和MCS-51复位端相连,仅采用独立的上电复位电路。
若R、C上电复位电路接斯密特电路输入端,斯密特电路输出接MCS-51和外围电路复位端,则能使系统可靠地同步复位。
一般来说,单片机的复位速度比外围I/O快些。
为保证系统可靠复位,在初始化程序中应安排一定的延迟时间。
3.9.1地址锁存器74LS373
74LS373是一个带三态门的8D锁存器,有8个D输入端,8个Q输出端,一个时钟输入端CP,一个锁存允许信号,当
=0时CP端上的上跳变,把8位D输入端的数据打入8位锁存器。
3.9.2MCS-51的串行口
MCS-51单片机内部有一个功能很强的全双工的串行口,该串行口有四种工作方式,波特率可用软件设置,由片内的定时器/计数器产生。
串行口接收,发送数据均可触发中断系统,使用非常方便。
MCS-51的串行接口除了可以用于数据通讯之外,还可以非常方便的用来驱动单片机应用系统中的键盘和显示器。
3.9.3串行口的结构
MCS-51单片机内部的串行口,有两个物理上独立地接收,发送缓冲器SBUF,可同时发送,接收数据,发送缓冲器只能写入不能读出,接收缓冲器只能读出不能写入,两个缓冲器共用一个字节地址(99H)。
控制MCS-51单片机串行口的控制寄存器共有两个:
特殊功能寄存器SCON和PCON。
串行口控制寄存器SCON(字节地址98H)的格式为:
D7D6D5D4D3D2D1D0
SM0
SM1
SM2
REN
TB8
RB8
TI
RI
位地址
9FH
9EH
9DH
9CH
9BH
9AH
99H
98H
SM0,SM1:
串行口4种工作方式的选择位。
SM2:
允许方式2和3的多机通讯控制位。
3.9.4译码器74LS138
74LS138就是用TTL与非门组成的3线-8线译码器,它的逻辑图如下
图3-48031逻辑图
当附加控制门Gs的输出为高电平(S=1)时,可由逻辑图写出
由上式可以看出,Y0-Y7,同时又是A2、A;、Ao这三个变量的全部最小项的译码输出,所以也把这种译码器叫做最小项译码器。
带控制输人端的译码器又是一个完整的数据分配器。
在图3.3。
8电路中如严把Sl作为“数据”输入端(同时令S2=S3=0),而将A:
A,Ao作为“地址”输人端,那么从Sl送来的数据只能通过由A2A1A0所指定的一根输出线送出去。
这就不难理解为什么把A2A1A0叫地址输入了。
例如当A2A1A010-101时,门G5的输入端除了接至Gs输出端的一个以外全是高电平,因此S1的数据以反码的形式从Y5输出,而不会被送到其他任何一个输出端上。
,
3.9.5可编程并行I/O芯片8255A
8255A是Intel公司生产的可编程输入输出接口芯片,它具有3个8位并行I/O口,允许采用同步、异步和中断方式传送I/O数据。
分别称为PA口、PB口和PC口,其中PC口又分为高4位口(PC7~PC4)和低4位口(PC3~PC0),它们都可以通过软件编程来改变I/O口的工作方式。
8255A内部有四部分电路组成。
它们是A口、B口和C口,A组控制器和B组控制器,数据缓冲器及读写控制逻辑,如图3-5
图3-58255A内部结构
8255A有三种基本工作方式,即方式0—基本输入输出方式;方式1—选通输入输出方式;方式2—双向传送(仅PA口)。
8255A的工作方式可由CPU送出一个控制字到8255A的控制字寄存器来选择。
可分别选择端口A和端口B的工作方式,端口C分成两部分,上半部分随端口A,下半部分随端口B。
端口A的工作方式有方式0、1和2三种,而端口B只能工作于方式0和1。
(1).方式0的功能
方式0是一种基本输入输出方式。
输出是锁存的,输入是不锁存的。
在这种工作方式下,三个端口的每一个都可由程序选定作为输入或输出,这种方式适用于无条件地传送数据的设备。
例如,读一组开关的状态,控制一组指示灯的亮与灭,并不需要联络信号,CPU可随时读入开关的状态,随时可把一组数据送到指示灯显示。
在方式0下工作,由于是无条件的传送,所以不需要状态端口,三个端口都可以作为数据端口,当然方式0也可以作为查询式输入或输出的接口电路,此时口A和口B分别可作为这两个端口的控制和状态信息。
(2).方式1的功能
这是一种选通的I/O方式。
在这种工作方式时,端口A和端口B作为数据的输入/输出,但同时规定端口C的某些位作为控制或状态信息。
(3).方式2的功能
这种工作方式,使外设可在单一的8位总线上,即能发送也能接收数据。
工作时可用程序查询方式,也可工作于中断方式。
由于本设计采用的是方式0工作方式,所以,对方式1和方式2只作简单介绍。
表3.28255A控制信号表
CS(110000B)
A1A0
RD
WR
端口地址
端口
功能
0
00
0
1
C0H
A
读A口
0
00
1
0
C0H
A
写A口
0
01
0
1
C1H
B
读B口
0
01
1
0
C1H
B
写B口
0
10
0
1
C2H
C
读C口
0
10
1
0
C2H
C
写C口
0
11
1
0
C3H
控制口
写控制
1
×
×
×
×
×
不工作
在8031单片机上扩展一片8255A芯片,无需外加任何逻辑电路,其接口电路如图3-6所示。
图中8255A的PA口地址为7CH,PB口的地址为7DH,PC口的地址为7EH,控制字寄存器的地址为7FH。
这里8031单片机对8255A采用了线性选址法。
下面给出一个8255A接口应用实例:
8255A的端口方式设置,设端口A为方式0输入,端口B为方式1输出,端口C(上半部)PC7~PC4输出,端口C(下半部)PC3~PC0输入。
8255A相应的控制字为10010101B=95H,接口电路见图3-6。
初始化程序如下:
MOVR0,#7FH;控制口地址送入R0
MOVA,#95H;方式控制字送入A
MOVX@R0,A;方式控制字送8255A控制口
图3-68031与8255接口电路图
第四章 控制电路及其设计
4.1对自动装箱控制系统电机的控制
电机的控制有多种办法,如磁力启动器控制,固态继电器控制,可控硅控制,以及大功率场效应管控制。
本设计采用固态继电器控制,固态继电器内部含有光电隔离元件,可以提高抗干扰能力。
自动装箱控制系统的电机控制电路如下
图4-1自动装箱控制系统电机控制电路
上图所示的自动装箱控制系统中的控制原理:
8255单片机的PC0控制传送带1的传动电机,PC1的控制传送带2电机,当按下启动键后,使PC0输出高电子,经反相后变为低电平,固态继电器SSR1发光二极管,由它触发SSR1导通,交流电机通电,传送带1运动,带动包装箱前移。
当包装箱运动到传感器1可以检测到信号的位置时,传感器1输出高电平,单片机检测到这一高电平后,P