饮料生产线的计算机控制技术的实现 微机原理项目.docx
- 文档编号:6166468
- 上传时间:2023-05-09
- 格式:DOCX
- 页数:33
- 大小:1.95MB
饮料生产线的计算机控制技术的实现 微机原理项目.docx
《饮料生产线的计算机控制技术的实现 微机原理项目.docx》由会员分享,可在线阅读,更多相关《饮料生产线的计算机控制技术的实现 微机原理项目.docx(33页珍藏版)》请在冰点文库上搜索。
饮料生产线的计算机控制技术的实现微机原理项目
饮料生产线的计算机控制技术的实现
--------微机原理课程设计
班级:
09级机设2班
学号:
*****
姓名:
课程名称:
16/32位微机原理、汇编语言及接口技术
指导教师:
2012年05月
饮料生产线的计算机控制技术的实现
摘要:
本项目通过模拟方式,实现饮料生产线的控制程序的调试。
用开关启动/结束程序,通过指示灯判别产品合格与否,步进电机的正反转体现两条传送带,并利用LED数码管记录不合格产品数量,最终完成饮料生产线的计算机控制技术的实现。
一、前言
电子计算机的诞生和发展是20世纪最重要的科技成果之一。
进入20世纪70年代以来,微型计算机开始登上历史的舞台,并以势不可挡的势头迅猛发展,成为当今计算机发展的一个主流方向。
当前,以微型计算机为代表的计算机已日益普及,其应用已深入到社会各个角落,极大地改变着人们的工作方式,学习方式和生活方式,成为信息时代的主要标志。
当代计算机是微电子学与计算数学相结合的产物。
微电子学的基本元件及其集成电路构成了他的硬件基础;而计算数学的计算方法与数据结构则构成计算机的软件基础。
自从1945年底世界上第一台电子数字计算机ENIAC诞生以来,计算机技术取得了异常迅猛的发展。
由电子管、晶体管、集成电路以至第四代的超大规模集成电路计算机,都与微电子技术的进步密切相关,且以所采用的逻辑元件作为划分每代的标志。
计算机正是大规模集成电路孕育的产物。
微型计算机被广泛地用于数值计算和工业控制之中。
数据采集系统是计算机在工业控制中最为普遍的应用系统。
他的任务是采集生产过程中的工况参数并经过A/D转换器送入内存储器,CPU将再对这些参数、数据进行分析、运算和处理,如数字滤波、量纲变换、仪表误差修正、数字显示、越限报警、打印制表等功能。
若再配上输出通道就可以方便地组成计算机控制系统。
本项目是设计一瓶装保健饮品的生产流水线的控制系统,包括检验空瓶到位、灌装开启、灌装量检测以及对合格和不合格产品的分别处理。
按键闭合,检验空瓶到位,到位后开始灌装,装满600克,停止该瓶的灌装。
然后检测灌装量,每瓶不得少于595克,合格则通过传送带A送出装箱;
不合格,即少于595克,通过另一传送带B送出处理,并记录而且显示少于595克的瓶数。
二、项目描述
工程背景及项目分解
以及:
1、每个环节的指示标志
2、怎样保证环节的相对连续性
3、程序的中断控制
三、项目模拟方案
3.1解决方案
3.2实验设备
设备
数量
8088CPU
1
8255A芯片
1
8155芯片
1
发光二极管
2
数码管
8
步进电机
1
12864液晶显示屏
1
3.3设计流程
注:
绿灯亮时空瓶到位并灌装
红灯亮时说明有次品
四、控制程序
4.1连线原理
8255
B4区:
CS,A0,A1
A3区:
CS2,A0,A1
B4区:
JP56(A口)
G5区:
JP41
B4区:
JP53(B口)
G5区:
JP42
B4区:
D0-D7
G6区:
DS35-DS42
8155
B4区:
CS,O/IM
A3区:
CS1,A8
B4区:
JP56
A3区:
JP51
电动机
E1区:
A,B,C,D
A3区:
P1.7,P1.6,P1.5,P1.4
蜂鸣器
D1区:
ctr
B4区:
D5
液晶显示屏
A1区:
CS1/2,CS,RW,RS
A3区:
A2,CS2,A0,A1
4.2连线图片
4.3程序设计
.modelsmall
WR_COM_AD_LEQU0d004H;写左半屏指令地址
WR_COM_AD_REQU0d000H;写右半屏指令地址
WR_DATA_AD_LEQU0d006H;写左半屏数据地址
WR_DATA_AD_REQU0d002H;写右半屏数据地址
RD_BUSY_ADEQU0d001H;查忙地址
RD_DATA_ADEQU0d003H;读数据地址
XEQU0B8H;起始显示行基址
YEQU040H;起始显示列基址
FirstLineEQU0C0H;起始显示行
.stack
.data
numberdb03fh,06h,5bh,4fh,66h,6dh,7dh,07h,7fh,6fh
jishudb6dup(?
)
hegedw?
buhegedw?
;--文字:
燕--
Line1_1db44h,44h,44h,0F4h,04h,0BFh,0A4h,0A4h
db0A4h,0BFh,04h,0F4h,84h,86h,44h,00h
db88h,68h,04h,07h,20h,4Fh,08h,08h
db28h,4Fh,00h,07h,28h,48h,0CEh,00h
;--文字:
"山"--
Line1_2db00h,0F0h,00h,00h,00h,00h,00h,0FFh
db00h,00h,00h,00h,00h,0F0h,00h,00h
db00h,7Fh,20h,20h,20h,20h,20h,3Fh
db20h,20h,20h,20h,20h,7Fh,00h,00h
;--文字:
"大"--
Line1_3db20h,20h,20h,20h,20h,20h,0A0h,7Fh
db0A0h,20h,20h,20h,20h,30h,20h,00h
db00h,40h,40h,20h,10h,0Ch,03h,00h
db01h,06h,08h,10h,20h,60h,20h,00h
;--文字:
"学"–
Line1_4db40h,30h,11h,96h,90h,90h,91h,96h
db90h,90h,98h,14h,13h,50h,30h,00h
db04h,04h,04h,04h,04h,44h,84h,7Eh
db06h,05h,04h,04h,04h,06h,04h,00h
;--文字:
"乔"--
Line2_2db10h,10h,10h,12h,92h,72h,1Eh,12h
db11h,0B1h,51h,91h,10h,18h,10h,00h
db02h,02h,01h,41h,30h,0Fh,00h,00h
db00h,0FFh,00h,00h,01h,03h,01h,00h
;--文字:
"旋"--
Line2_3db08h,08h,0F9h,4Eh,48h,0CCh,28h,10h
db2Fh,24h,0E4h,24h,24h,0A6h,64h,00h
db40h,30h,0Fh,20h,40h,0BFh,40h,20h
db1Fh,20h,7Fh,84h,86h,0C4h,40h,00h
;--文字:
"微"--
Line3_1db10h,88h,0C4h,0A3h,0BCh,0A0h,0BFh,0A0h
db0BCh,20h,0D8h,17h,90h,78h,10h,00h
db01h,00h,0FFh,40h,3Eh,02h,02h,3Eh
db90h,48h,33h,0Ch,33h,0C0h,40h,00h
;--文字:
"机"--`
Line3_2db10h,10h,0D0h,0FFh,90h,10h,00h,0FCh
db04h,04h,04h,0FEh,04h,00h,00h,00h
db04h,03h,00h,0FFh,80h,41h,20h,1Fh
db00h,00h,00h,3Fh,40h,40h,70h,00h
;--文字:
"原"--
Line3_3db00h,00h,0FEh,02h,0E2h,0A2h,0B2h,0AEh
db0A2h,0A2h,0A2h,0A2h,0F3h,22h,00h,00h
db40h,30h,0Fh,40h,23h,1Ah,42h,82h
db7Eh,02h,02h,0Ah,13h,60h,00h,00h
;--文字:
"理"--
Line3_4db44h,44h,0FCh,46h,44h,00h,0FEh,92h
db92h,0FEh,92h,92h,0FFh,02h,00h,00h
db10h,30h,1Fh,08h,48h,48h,44h,44h
db44h,7Fh,44h,46h,44h,60h,40h,00h
.code
;===============================================================
;主程序
start:
movax,@data
movds,ax
NOP
CALLLCD_INIT;液晶初始化
CALLDelayTime
callshow
CALLDisLine1;第2行显示”燕山大学”
callshow
CALLDelayTime
callshow
CALLDisLine2;第3行显示”乔旋”
callshow
CALLDelayTime
callshow
CALLDisLine3;第4行显示”微机原理”
callshow
CALLDelayTime
movdx,0e003h
moval,88h;A口输出,B口输出,C口上半段输入作为开关,C口下班段作为灯控制
outdx,al
movbx,0
movsi,offsetjishu
test1:
movdx,0e002h;所有灯灭
moval,11111111b
outdx,al
xoral,al
callshow
movdx,0e002h;读入开关状态
inal,dx
cmpal,11101111b;第五个开关控制瓶子到位
jzdeng1
looptest1
deng1:
movdx,0e002h
moval,11101110b;绿灯亮说明在灌装
outdx,al
movcx,20
cc:
calldelay1
callshow
loopcc
moval,11111111b;绿灯灭灌装完毕
outdx,al
movcx,200
next:
callshow
calldelay2
loopnext
test2:
movdx,0e002h;读入开关状态
inal,dx
cmpal,11001111b
jzdeng2
callshow
inchege
movax,hege
movcl,100
divcl
mov[si+3],al;百位
moval,ah
xorah,ah
movcl,10
divcl
mov[si+4],al;十位
moval,ah
mov[si+5],al;个位
callshow;显示
calldelay2
callbujin1;合格正转,即合格产品放在一起
looptest1
deng2:
incbuhege;不合格产品个数
movdx,0e002h
moval,11000111b;红灯亮显示不合格产品
outdx,al
callbujin2;不合格反转,即不合格产品放在一起
callshow
movax,buhege
movcl,100
divcl
mov[si],al;百位
moval,ah
xorah,ah
movcl,10
divcl
mov[si+1],al;十位
moval,ah
mov[si+2],al;个位
callshow;显示
calldelay2
movdx,0e002h
moval,11111111b
outdx,al
callshow
jmptest1;继续下一次灌装和检测
movax,4c00h;程序结束
int21h
;主程序结束
;====================================================================
;显示程序
showproc
pushcx
pushax
pushbx
pushdx
movbx,offsetnumber
moval,01110111b
movdx,0e001h
outdx,al
moval,3fh
movdx,0e000h
outdx,al
calldelay2
moval,10111111b
movdx,0e001h
outdx,al
moval,[si+3]
xlat
movdx,0e000h
outdx,al
calldelay2
moval,11011111b
movdx,0e001h
outdx,al
moval,[si+4]
xlat
movdx,0e000h
outdx,al
calldelay2
moval,11101111b
movdx,0e001h
outdx,al
moval,[si+5]
xlat
movdx,0e000h
outdx,al
calldelay2
moval,11111011b
movdx,0e001h
outdx,al
moval,[si]
xlat
movdx,0e000h
outdx,al
calldelay2
moval,11111101b
movdx,0e001h
outdx,al
moval,[si+1]
xlat
movdx,0e000h
outdx,al
calldelay2
moval,11111110b
movdx,0e001h
outdx,al
moval,[si+2]
xlat
movdx,0e000h
outdx,al
calldelay2
popdx
popbx
popax
popcx
ret
showendp
;==========================================================================
;延时程序1
delay1proc
pushax
pushbx
pushcx
pushdx
movcx,200
B:
movdi,30
A:
decdi
jnzA
loopB
popdx
popcx
popbx
popax
ret
delay1endp
;================================================================
;延时程序2
delay2proc
pushax
pushbx
pushcx
pushdx
movbx,10
C:
movcx,20
D:
loopD
decbx
jnzC
popdx
popcx
popbx
popax
ret
delay2endp
;===================================================================
;步进电机子程序1即正转
bujin1proc
pushax
pushbx
pushcx
pushdx
movdx,0f100h
moval,1
outdx,al
movcx,10
again1:
movdx,0f101h
moval,10000000b;给步进电机a口低脉冲
outdx,al
calldelay1
moval,01000000b
outdx,al
calldelay1
moval,00100000b
outdx,al
calldelay1
moval,00010000b
outdx,al
calldelay1
loopagain1
popdx
popcx
popbx
popax
ret
bujin1endp
;==================================================
;步进电机子程序2即反转
bujin2proc
pushax
pushbx
pushcx
pushdx
movdx,0f100h
moval,1
outdx,al
movcx,10
again2:
movdx,0f101h
moval,00010000b;给步进电机a口低脉冲
outdx,al
calldelay1
moval,00100000b
outdx,al
calldelay1
moval,01000000b
outdx,al
calldelay1
moval,1000000b
outdx,al
calldelay1
loopagain2
popdx
popcx
popbx
popax
ret
bujin2endp
;液晶显示=======================================
;延时程序
DelayTimePROCNEAR
MOVCX,0
LOOP$
LOOP$
RET
DelayTimeENDP
;第2行显示”燕山大学”
DisLine1PROCNEAR
LEASI,Line1_1
MOVAL,2;A-起始显示行地址,第2行
MOVAH,32;B-起始显示列地址,第32列,以下同
CALLWordDISL;左半屏,显示一个字子程序
LEASI,Line1_2
MOVAL,2
MOVAH,48
CALLWordDISL
LEASI,Line1_3
MOVAL,2
MOVAH,0
CALLWordDISR;右半屏,显示一个字子程序
LEASI,Line1_4
MOVAL,2
MOVAH,16
CALLWordDISR
RET
DisLine1ENDP
;第3行显示”乔旋”
DisLine2PROCNEAR
LEASI,Line2_2
MOVAL,4
MOVAH,48
CALLWordDISL
LEASI,Line2_3
MOVAL,4
MOVAH,0
CALLWordDISR;右半屏,显示一个字子程序
RET
DisLine2ENDP
;第4行显示”欢迎使用”
DisLine3PROCNEAR
LEASI,Line3_1
MOVAL,6;A-起始显示行地址,第6行
MOVAH,32;B-起始显示列地址,第32列,以下同
CALLWordDISL;左半屏,显示一个字子程序
LEASI,Line3_2
MOVAL,6
MOVAH,48
CALLWordDISL
LEASI,Line3_3
MOVAL,6
MOVAH,0
CALLWordDISR;右半屏,显示一个字子程序
LEASI,Line3_4
MOVAL,6
MOVAH,16
CALLWordDISR
RET
DisLine3ENDP
;液晶初始化
LCD_INITPROCNEAR
MOVAL,3EH;初始化左半屏,关显示
CALLWRComL;写指令子程序
MOVAL,FirstLine;设置起始显示行,第0行
CALLWRComL
MOVAL,3EH;初始化右半屏,关显示
CALLWRComR;写指令子程序
MOVAL,FirstLine;设置起始显示行,第0行
CALLWRComR
CALLLCDClear;清屏
MOVAL,3FH;开显示
CALLWRComL
MOVAL,3FH;开显示
CALLWRComR
RET
LCD_INITENDP
;清屏
LCDClearPROCNEAR
;清左半屏
MOVAL,0;起始行,第0行
MOVAH,0;起始列,第0列
LCDClearL1:
PUSHAX
MOVCX,64
CALLSETXYL;设置起始显示行列地址
LCDClearL2:
MOVAL,0
CALLWRDATAL
LOOPLCDClearL2
POPAX
INCAX
CMPAL,8;共8行
JNZLCDClearL1
;清右半屏
MOVAL,0;起始行,第0行
MOVAH,0;起始列,第0列
LCDClearR1:
PUSHAX
MOVCX,64
CALLSETXYR;设置起始显示行列地址
LCDClearR2:
XORAL,AL
CALLWRDATAR
LOOPLCDClearR2
POPAX
INCAL
CMPAL,8;共8行
JNZL
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 饮料生产线的计算机控制技术的实现 微机原理项目 饮料 生产线 计算机控制 技术 实现 微机 原理 项目