硬件课程设计报告 电梯监控系统硬件Word文档下载推荐.docx
- 文档编号:16761243
- 上传时间:2022-11-25
- 格式:DOCX
- 页数:43
- 大小:158.90KB
硬件课程设计报告 电梯监控系统硬件Word文档下载推荐.docx
《硬件课程设计报告 电梯监控系统硬件Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《硬件课程设计报告 电梯监控系统硬件Word文档下载推荐.docx(43页珍藏版)》请在冰豆网上搜索。
三、设计步骤
3.1基本设计目标实现………………………………………………4
3.2硬件连接…………………………………………………………6
3.3优化与拓展功能实现…………………………………………7
四、设计流程图…………………………………………………………8
4.1主程序流程图……………………………………………………8
4.2子程序流程图……………………………………………………9
五、编程与调试………………………………………………………11
六、心得体会…………………………………………………………11
七、程序清单…………………………………………………………14
一、简介
随着社会的飞速发展以及科技水平的不断提高,城市里超高层建筑如雨后春笋般出现在人们的生活中。
为了方便人们的生活水平,电梯普遍应用在各个高层建筑中。
当然,科技的进步,使得电梯的设计、工艺不断得到提高,电梯的品种也逐渐增多。
本次计算机硬件课程设计的任务就是模拟设计电梯监控系统的功能。
我们小组利用所学的计算机硬件基础知识进行了简单的设计,在设计实现各个基本功能的基础上,拓展设计完成了一些相关优化功能,进一步加深了对计算机硬件技术的理解和应用。
2.1设计的主要内容
设计一个由两台电梯组成的电梯监控系统,能用计算机硬件实验系统的输入输出设备完成计电梯系统的基本功能,该部分占60分;
并在此基础上自行完善和优化系统功能,该部分占40分(若有雷同者,该部分不得分)。
基本功能具体要求如下:
1.以计算机硬件实验系统的输入输出设备为基础,以实验系统上4*4键盘和开关作为输入设备,以LED显示器和小灯作为输出设备,完成设计;
(允许使用PC机的扬声器作为发声设备)
2.电梯监控系统基本功能描述如下:
(1)一楼有上行键,其他楼层有上行键和下行键,要求各楼层的电梯上行和下行按键为两个电梯联动。
(2)要求电梯内有楼层键(<
=20层)。
(3)按一楼上行键后,若电梯停在其它楼层,则离一楼最近的电梯下行到一楼,自动开门;
若电梯在一楼,则直接开门。
停顿一段时间后,自动关门。
根据电梯内楼层的按键情况,选择上行或停止在一楼。
(4)上行或下行过程中,按顺序在每个按下的楼层停顿,每次停顿时,自动开门,一段时间后,自动关门。
若电梯内已经没有按下的楼层键,则停止在最佳楼层。
(5)要求显示电梯当前所在楼层,运行方向(上行,下行或停止)和电梯门状态(打开或关闭)。
电梯门打开和关闭过程中有相应的声音提示及图形显示提示。
2.2设计报告要求
1.明确每位组员的详细分工。
2.在上述设计主要内容的基础上,本组讨论整理出系统的详细操作说明。
3.详细描述自行完善和优化的系统功能以及设计方案。
4.给出系统的设计思路和意见、软件设计方案。
5.画出各软件模块的程序流程图。
6.列出加上必要注释的程序清单。
7.每位组员根据自己承担的设计内容和设计过程,写出心得体会(不少于800字)。
3.1基本设计目标实现
根据课程设计任务书所提出的要求,我们小组通过讨论和分析后首先确定出此次电梯监控系统设计中我们需要完成的几个基本功能以及操作方案:
3.1.1基本设计目标及实现方案
(1)一楼有上行键,其他楼层有上行键和下行键,要求各楼层的电梯上
行和下行按键为两个电梯联动。
我们通过PC机键盘的1到9键分别表示1到9号楼层的上行键,通过PC机键盘的Q到O键分别表示2到10号楼层的下行键。
每当扫描到PC机键盘上有键按下时,就表示外部有人需要乘坐电梯。
(2)按一楼上行键后,若电梯停在其它楼层,则离一楼最近的电梯下行到一楼,自动开门;
我们通过一个做差比较的程序,先分别计算当前电梯所在楼层与外部按键所在楼层之差,再将两台电梯所计算得到的差值就行比较,选出离按键最近的一台电梯运行到按键楼层,并打开电梯门让人进入,随后关上电梯门(LED灯对应显示从1变为0又重新变为1)。
当两台电梯比较发现离按键楼层一样近时,即两个的差值相等时,两台电梯将同时到达按键所在楼层,我们将根据电梯内的按键判断人进入了哪台电梯。
若JK键盘上有E按下,则说明选择了1电梯,F按下表示说明了2电梯。
在整个流程中,改功能通过一个扫描子程序完成,即先扫描是否有E或者F按下,然后根据所按的值进入相关电梯的运行状态。
如果E和F均未按下,则系统将一直等待按键按下。
(3)上行或下行过程中,按顺序在每个按下的楼层停顿,每次停顿时,自动开门,一段时间后,自动关门。
当人进入电梯内,同时按下了几个目标楼层,系统将会把这几个目标楼层进行比较排序并储存起来,按照顺序在每个按下的楼层停顿。
我们同样通过一个扫描程序完成。
先将段选清零,通过行列的方式确定哪个键按下,然后根据对应的码值选出所对应的按键。
按下确定后,系统将掉用存储的目标楼层数据,并在该层停止后开门关门,继续运行。
知道再无人按下电梯,两台电梯都将经过15秒的等待时间回到最佳楼层。
(4)要求显示电梯当前所在楼层,运行方向(上行,下行或停止)和电梯门状态(打开或关闭)。
在电梯上下行过程中,我们分别用LED上的数字1到A显示当前楼层1层到10层,LED上的上行标志F和下行标志倒转的F分别表示电梯当前上行,下行的状态。
若此时电梯停止,则此时对应的LED灯将无显示。
同时,LED上的1和0分别表示电梯的开门和关门状态,在每个楼层到达后,为了让乘客进出,电梯将从关门到开门再到关门变化,模拟出来就LED对应的首位显示从1变为0最后变为0。
同时,电梯门打开和关闭时硬件版会发出相应的提示音,代表楼层到了,提示乘客注意。
3.1.2按键说明
进入界面后,按Enter开始运行程序。
电梯使用LED灯显示电梯的状态,即电梯开关门,上行下行状态以及电梯所在楼层的状态。
将六位LED灯分为两组,每三位为一组,共同显示一台电梯的运行情况。
每一组将三个LED灯从左到右设为a,b,c,三位,a位表示电梯的开关门状态,用1表示电梯关门,用0表示电梯开门。
b位用F表示电梯上下行状态,F正立表示电梯正在向下运行,F旋转180°
,即F倒立,表示电梯正在向上运行。
c位能够显示1到A,分别显示从1楼到10楼的所在位置。
另外一部电梯也是同样的道理。
在初始情况下,电梯A停在四楼,电梯B停在一楼,都是关闭状态。
在PC键盘上,用1到9分别表示在电梯外部上行的按键,从1楼到9楼(电梯为10层楼,所以10楼没有上行键),用Q到O(键盘上横排数字键左下所对应的字母)分别表示从2楼到10楼的下行按键(1楼不需要下行按键)。
在按键部分,用1到A分别表示电梯里面能按的楼层,使乘客选择到几楼,用F,E分别表示选择电梯A还是电梯B(这两个键只在两台电梯同时到达相同楼层并且同时开门时,供乘客选择A或者B电梯时使用)。
按下目标楼层后,同时要按下0键表示确认。
功能明细表如下:
按键
功能
数字键1
1楼上行
字母键Q
2楼下行
数字键2
2楼上行
字母键W
3楼下行
数字键3
3楼上行
字母键E
4楼下行
数字键4
4楼上行
字母键R
5楼下行
数字键5
5楼上行
字母键T
6楼下行
数字键6
6楼上行
字母键Y
7楼下行
数字键7
7楼上行
字母键U
8楼下行
数字键8
8楼上行
字母键I
9楼下行
数字键9
9楼上行
字母键O
10楼下行
表1键盘按键功能对照表
PC机键盘:
全部表示电梯外的按键
JK面板4*4小键盘:
全部表示电梯内部按键:
按键1
到达1楼
按键8
到达8楼
按键2
到达2楼
按键9
到达9楼
按键3
到达3楼
按键A
到达10楼
按键4
到达4楼
按键
确认键
按键5
到达5楼
按键E
选择电梯A
按键6
到达6楼
F
选择电梯B
按键7
到达7楼
表2:
4*4键盘功能对照表
3.1.3模拟演示
电梯初始时A停在六楼,B停在1楼,此时假定乘客A要从2楼上8楼,①按PC键盘上2键较近的电梯(B)到达2楼电梯自动开门,乘客进入后一段时间自动关门。
②按面板键盘上8键再按0键确认电梯上8楼,后自动开门,乘客离开后,过一段时间自动关门。
若此时有乘客在五楼要下行:
③按PC键盘R键电梯A,B距离5楼位置相同,同时到达5楼。
④按面板键盘F键选择电梯A。
⑤按面板键盘1键电梯到1楼。
若此时在8楼有乘客分别要到3楼和1楼:
⑥按PC键盘U键电梯B到8楼,开门,乘客进,关门。
⑦按面板键盘3和1键,再按0键确认电梯先到3楼停下,开门,一段时间后关门,再到1楼。
3.2硬件连接
确定了基本功能软件设计方案,我们通过查阅相关资料,综合讨论后设计出了硬件连接方案,下面是我们的硬件连接:
A口(J4)——位选口及键盘行控制信号(J8)(J8-1为第一行);
B口(J2)——段选口(J7);
C口(J3)——键盘列控制信号(J9)(J9-1为第一行);
8254定时器0与定时器1的GATE门串联后接开关;
定时器0的OUT口与定时器1的CLK口连接;
定时器1的OUT口接8255的PC7;
定时器0的CLK口接脉冲源(J10)。
硬件连接图如下所示:
图1:
硬件电路图
3.3优化与拓展功能实现
实现了基本功能之后,我们开始讨论设计电梯监控系统的扩展功能。
在本次设计中,我们实现了以下拓展功能:
开机界面我们显示“电梯监控系统设计”,“制作成员:
赖国强,李延,晏艮平,罗威”,“时间:
2011年9月”,“欢迎乘坐本电梯,按ENTER进入演示”这几行文字。
当电梯里同时按下几个目标楼层时,我们通过硬件版上的小灯显示已经按下了多少目标楼层,让电梯内的乘客明确电梯将会在哪些楼层暂停。
(用小灯的二进制方式表示)
当电梯同时到达同一楼层的时候,乘客可以自由选择乘坐自己喜欢的电梯。
实现了人性化的设置。
四、设计流程图
4.1主程序流程图
图2:
主程序流程图
4.2子程序流程图
图3:
运行子程序流程图
图4:
4*4小键盘扫描子程序
五、编程与调试
在明确实现目的与方法后,我们画出了流程图,根据流程图,我们编制出整个设计的主程序和子程序,并且通过组员的反复调试后,实现了提出的基本功能和拓展功能。
六、心得体会
赖国强20085417:
两周的计算机硬件课程设计终于要结束了,虽然我们小组做出来的方案以及实施存在着很多不足和缺陷,但总算是实现了所要求的基本功能,所要完善的地方也只能再往后的时间里自己去摸索去改善,但是打从心里觉得这两周真的受益匪浅。
在课程设计刚开始阶段,由于组内成员分工不明确,导致了前面阶段的进展很慢,大家都按照自己的想法来弄,没有统一意见,最后发现比其他课题小组的进度要慢很多,然后大家就坐下来好好的讨论一下,最后得出比较可行的方案,接着大家就按照个人所长所专,分配好个人的具体任务,我所负责的是程序的主体流程逻辑以及实现细节。
在刚开始画流程图的时候,我没有按照任务书上面的基本要求来画,就是按照自己的想法来设计两部联动的电梯,打算一次性把基本功能和扩展功能实现了,结果在思考两部电梯同时运动时候又有外部按键按下时,就难于继续下去了,整个逻辑都混乱了,最后思前考后,还是决定先按照任务书把基本功能搞好了再慢慢扩展新的功能,这样整个人的思路就相对清晰明了很多了,这个教会我做事情很难一蹴而就的,往往需要你脚踏实地,一步一个脚印的走过来。
这样大家分工明确之后,效率就高很多了,很快其他组员就把各自负责的程序部分弄出来了,这又让我不得不感慨团队的力量之大了,与人合作,如何与人合作,如何与人合作好,这些果断还是很有必要在以后的学习工作生涯里都好好锻炼的啊。
而在我接下来的工作里就又出现问题了,我把他们的程序在我的主程序调用时候,程序总是在乱飞的,后面经过很长一段时间的努力,才终于把问题解决了,最后我总结出来几点原因:
1,我们模块化的思想还不够,所编程序的独立性不好;
2,我们都没有养成给程序加注释的习惯;
3,所用跳转符号没有很明确的意义,往往就是随手写的,其他人看很难读懂程序。
这些在我往后的编程学习里都要多加注意。
最后也是最重要的一步,调试程序,就比较费时费力了,因为这个不仅仅要看程序逻辑,因为有时候但看程序很难看出其中的错误,需要用到单步调试,这个实在是太考一个人的耐心了,而且有时候程序不一定有错,而且硬件出问题了,比如接线是断的,或者按键是坏的不灵敏的,我刚开始的时候在抱怨学校为什么不换一些好一点的硬件,但是后来想想以后的工作我们不也是会遇到这样的情况吗,难道我们所遇到的硬件机器会一直都是可靠无错的吗?
现在早点遇到这种情况,学会如何去处理也对我们是一种锻炼啊!
李延20085418:
在这次短暂的两个星期的学习与设计中,我和我的队友们一起合作完成了电梯监控系统设计的任务。
电梯监控系统这个任务的难点主要在于其设计过程中逻辑的复杂性。
最开始我们考虑到把两台电梯的连动功能作为拓展功能加进去,但庞大的工作量和逻辑信息让我们看不到任何希望,我们最终只好放弃了这一追求。
在这次课程设计中,我负责的主要任务是和队友们一起商量设计思路,同时负责键盘模块的程序编制和程序的检测。
在我的任务执行中,我遇到了以下的问题:
一:
作为单独的模块,键盘的扫描程序没有任何问题,但是当子程序加入主程序组合起来时,键盘的扫描不是很理想。
由于读键盘的程序插在显示程序中间,所预留给按下键盘数字的时间有限,既不能太长也不能太短,应该刚好落在那个间隙中,否则按下的键就读不进去。
二:
写程序的时候过于毛躁,不够仔细。
出错了之后老是不能沉下心来自己检查出错误,总是觉得自己的设计思路有问题,后来拿给队友检查,往往是再最简单的地方出了错。
因此我感觉到程序写完了后查错最好找别人帮忙改,这样更容易发现程序中的Bug。
三:
由于硬件的问题,在JK键盘有键按下后,有可能会出现按键没有扫描进入程序的状况,针对这种情况,我们开发了拓展功能,即通过二极管小灯的二进制计数方式表示所按下的楼层层数,这样能让我们及时发现按键的状况。
四:
应该还是很久没有看过计算机硬件技术的知识了,很多比较基础的东西都感觉到了生疏,在接到任务的最初几天根本都无法下手,后来看了几个例题才慢慢找回感觉。
这说明以前学习的时候还是基础没有打牢,对于编程自己实际动手比较少。
最后,我们明显感到了时间的不足,有些想出来了的但比较复杂比较花费时间的拓展功能我们都没有时间去实现,这不得不说有些遗憾。
总之,在这次的课程设计中,我还是学习到了很多的东西的。
首先,这是第一次合作做出一个比较贴近现实生活和实际的系统,感觉自己能够将所学的理论知识跟实际应用联系到了一起,体会到了一些成就感。
其次,深刻认识到了自己的动手能力以及创造能力的欠缺。
很多的程序只能依照书上的例题依样画葫芦,书上没有的例子就完全想不出自己的程序。
而且往往有时候,自己照着书本例题改动了一部分却始终调试不出来,自己也弄不清楚问题出在哪个地方。
最后在我看来,虽然说汇编语言是机器语言,在执行过程中速度远远比C等高级语言,但是其过于繁琐的编写过程比较耗费体力,对于实现大规模的项目效率明显不高。
相反,C等语言就比较简洁,实现功能起来也更加的简洁。
晏艮平20085420:
本次课程设计的课题是电梯监控系统的模拟设计,在当初选择课题时我们很快就选定了这一课题,因为它给我们的第一感觉就是用硬件板实现起来比较直观方便;
但是当我们真正进行课题的分析设计时却不如我们预期的那样。
首先我们要设计的是2台电梯的联动问题,尽管我在网上花了大量的时间查找资料,可惜查到的基本都是单独的一台电梯的问题,几乎没有任何的参考价值,因此我们的一切过程都得从零开始一步一步的分析设计。
为了对我们所设计的模型有一个客观的认识,我还特地找了一个现实中的2太电梯联动的例子进行考察。
由于时间较短我们只完成了一些基本要求,且不太完善,需要进一步的改进。
此次设计我所负责的虽然只是前面显示的一小部分,这也算是我们附加功能的一部分吧,这部分看似简单,不过他所用到的知识都是在我们之前的课程及实验过程中都没有涉及的一部分,其中汉字显示部分只牵涉到文字及其背景颜色的选择,还有就是文字在屏幕上显示的位置的调整和设置。
这些都可以从书本上找到现成的程序然后稍作修改就可以实现。
然而当我们打算进一步美化,通过在屏幕上显示一个电梯开关门的动画时就遇到困难,我首先考虑的是在图形中线2边分别显示一个逐渐变小的矩形,但是实现起来比较麻烦,然后后考虑在图形中级绘制一个向2边逐渐扩展的矩形,可是在实现的时候显示单个矩形还比较容易,可要让他运动起来形成开关门的动画就没有那么容易了,经过多次努力我仍然没能实现还需要进一步的思考和改进。
本次设计让我知道了团队合作的重要性,很多时候自己编程的时候找了很久都没能找到错误的原因,大多数情况下只要与队员商量探讨一下便能豁然开朗,找到错误的所在。
这次试验还让我了解到我对硬件技术这门课程知识的掌握程度还差得很多,也让我了解到硬件知识在我们生活的各个方面都能得到很好的应用。
因此,我们应该加强对其知识的学习和巩固。
罗威20085398:
通过这两周的课程设计,自己又重新将计算机硬件基础的知识温习了一遍,对计算机硬件基础有了新的收获。
在设计过程中虽然遇到了一些问题,但经过一次又一次的思考和检查,终于找出了原因所在,也暴露出了前期我在这方面的知识欠缺和经验不足。
在本次的课程设计中,我主要的任务是使用LED等显示电梯的状态,即电梯开关门,上行下行状态,电梯所在楼层的状态。
大致的思路是:
将LED灯分为两组,每三位为一组,共同显示一台电梯的运行情况。
,即F倒立,表示电梯正向上运行。
c位能够显示从1到A,分别显示从1楼到10楼的所在位置。
在整个编程过程中,最常见的问题就是经常把程序写错,例如把IN写成INT,DX打成DZ,想想其原因,一是自己对键盘输入汇编语言已经不太熟悉,第二是在写程序的过程中自己太粗心大意。
LED程序在实验书上曾经做过类似的程序,现在也有参考程序,所以说将书上的程序进行修改便基本可以使用,例如F的字码是8EH,而倒立的F字码是87H,这些比较特殊的要加入进去。
同时自己也在网上搜寻了一些资料,发现小小的电梯要求自动化程度很高的,要做出实际中能够使用的电梯程序,难度是相当大的。
这么课程对我来说算是比较难的,在我遇到困难时,小组的队友帮助我解决困难,使我得到更大的收获,让我非常开心,同时也非常感谢他们,对于课程设计,我觉得是非常重要的。
首先,课程设计是对我们所学课程的一个非常好的检验,看看我们学的知识是否能活学活用,同时也是是一次将理论同实际相结合的大好机会,能让我们有自己动手的机会,使我们所学的知识能付诸于实践,使我们所学的知识再也不是纸上谈兵同时,小组成员间的各取所长,互相帮助提高了我们的团队意识和合作能力,这对以后工作是很重要的。
我明白了做任何事都要认真钻研,动脑思考,这次课程设计我也收获颇丰。
七、程序清单
.486
DATASEGMENT
DT1DB3;
电梯1当前所在楼层
DT2DB8;
电梯2当前所在楼层
CS1DB10H
CS2DB10H
CSC1DB0;
电梯1与按键所在楼层差
CSC2DB0;
电梯2与按键所在楼层差
ZT1DB0FFH;
电梯1上下行状态(初始为停止)
ZT2DB0FFH;
电梯2上下行状态(初始为停止)
MZT1DB0F9H;
电梯1门开关状态(初始为关门)
MZT2DB0F9H;
电梯2门开关状态(初始为关门)
DTZTDB?
;
电梯状态(主要判断按键上行还是下行)
NBDTDB?
两部电梯同时开门,所选进入电梯
SHUMUDB?
有多少按键按下
CISHUDW?
记录存储器
BAOCUNDB?
BAOCUN1DB10H
BAOCUN2DW?
BAOCUN3DB?
SCZT1DB?
SCZT2DB?
BIAOZHIDB0;
辅助判断标志
BIAOZHI1DB0
FDW523,523,523,523,523,523,523,523,0
TDW7DUP(50),100
NUMDB10DUP(?
)
KEYTABDB0E7H,0D7H,0B7H,077H,0EBH,0DBH
DB0BBH,07BH,0EDH,0DDH,0BDH,07DH
DB0EEH,0DEH,0BEH,07EH
KEYTAB1DB31H,32H,33H,34H,35H
DB36H,37H,38H,39H,51H
DB57H,45H,52H,54H,59H
DB55H,49H,4FH
KEYTAB2DB87H,87H,87H,87H,87H
DB87H,87H,87H,87H,8EH
DB8EH,8EH,8EH,8EH,8EH
DB8EH,8EH,8EH
KEYTAB3DB1H,2H,3H,4H,5H
DB6H,7H,8H,9H,2H
DB3H,4H,5H,6H,7H
DB8H,9H,0AH
MESSDB0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H
DB80H,90H,88H
STRING1DB'
电梯监控系统设计'
;
初始界面显示
STRING2
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 硬件课程设计报告 电梯监控系统硬件 硬件 课程设计 报告 电梯 监控 系统