设计流水线工件统计系统
计算机硬件技术基础课程设计 流水线工件统计系统设计 姓名:蒋坤婷蒋坤婷学号:: 20105095 20105095 姓名:彭永红彭永红学号:: 20105007 20105007 姓名:王经造王经造学号:: 20105116 20105116 姓名:汤乾锋汤乾锋学号:: 20104990 20104990 重庆大学自动化学院 二 O 一三年九月 目录目录 引言引言 1 1.1.设计的重要内容和方案设计的重要内容和方案 1 1.11.1 设计的主要内容设计的主要内容.1 1.21.2 设计方案设计方案 1 2.2.任务分工任务分工 2 3.3.操作说明操作说明 2 4.4.优化系统功能及设计方案优化系统功能及设计方案 2 5.5.软件设计功能流程软件设计功能流程 3 6.6.主程序及子模块流程图主程序及子模块流程图 4 7.7.程序清单程序清单 10 8.8.每个人的心得体会每个人的心得体会 22 9.9.参考文献参考文献 26 引言引言 随着社会的快速发展,越来越多的自动化设施设备代替了人的劳动,这带来了更高的效 率和经济价值,也为人类大大减少了危险状况的发生。 其中流水线技术也占据了提高劳动效率和经济价值领域的很重要的部分。流水线技术环 节中有很多情况下会对工件进行计件处理等,这为管理流水线的工作状态提供了重要依据。 因此我们对一个简单的流水线工件统计系统进行了设计。 这对我们了解流水线技术是有很大 帮助的。 1.1. 设计的重要内容和方案设计的重要内容和方案 1.11.1 设计的主要内容设计的主要内容 设计一个工件统计系统, 用计算机硬件实验系统设备完成统计系统的基本功能, 并在此 基础上自行完善和优化系统功能。基本功能具体要求如下: 1.统计流水线上完成的工件总个数 (10000) ,计算当前工作速度(工件个数/分钟) , 并在三色 LED 上显示总个数和当前的工作速度。 2.用脉冲信号模拟流水线上的工件,每按一次表示一个工件。 3.流水线有启停信号,启动后开始统计工件个数,停止后工件个数清零。 4.设置基本工作速度和优秀工作速度, 每隔 5 分钟计算一次最近 5 分钟的平均工作速 度。 低于基本工作速度让蜂鸣器叫3 秒, 达到优秀工作速度使每分钟工件数闪烁3 秒以示鼓 励。 5.利用 4×3 小键盘和单色 LED 在线修改基本工作速度和优秀工作速度, 即修改设置时 流水线不停工。 1.21.2 设计方案设计方案 我们经过小组讨论,将基本功能分为了几个小模块。如下: 1. 初始化芯片、初始化显示、初始化数据段、中断向量填充模块。 2. 等待启动、显示基本及优秀速度、定时、中断模块。 3. 计数、计算当前工作速度、显示总数及速度模块。 4. 扫描按键、转换按键、送显、速度比较模块。 5. 设计报告的编写模块。 我们小组四人分别将这 5 个子模块进行分工合作。 然后共同进行主程序模块的设计, 以 1 上各个模块的思路请看流程图。 2.2. 任务分工任务分工 汤乾锋:进行按键扫描程序、显示基本速度最优速度程序, 编写程序流程图以及报告论 文。 蒋坤婷:进行判断起动程序、显示程序、 定时程序以及中断程序的编写,并共同完成论 文。 王经造:编写计数程序,显示总数及速度程序,并共同完成论文。 彭永红:编写初始化程序、转换程序以及速度比较程序, 同时对各部分程序进行阅读找 错并共同完成论文。 3.3.操作说明操作说明 系统按键操作说明系统按键操作说明 在程序开始运行后,系统的初始状态是工件总数显示为0,工作速度为 0,基本工作速度 可设为 10,优秀工作速度可设为20,具体操作方式如下: 1.实验板的上升沿开关模拟工件到来; 2.第五片 8255A 的 PA6 口接启停开关 K8; 3.基本速度用 4×3 键盘数字键设置,A 键为确认键; 4.优秀速度用 4×3 键盘数字键设置,B 键为确认键。 操作方法说明操作方法说明 1.程序下载完毕,如果拨上拨码开关K8,系统进入开启; 2.按动上升沿开关,总数随着按键次数加1,模拟工件个数,工件总数在三色LED 前四 位上面显示; 3.在 4×3 键盘上可以设置基本速度和优秀速度并分别按A、B 键确认,单色LED 灯随即 显示设置的速度; 4.系统每隔 1 分钟更新一次工作速度,在三色LED 灯从左到右第 5、6 位上显示; 5.当每隔 5 分钟到时,如果速度低于基本速度蜂鸣器会响3 秒钟;如果达到优秀速度工 件数会闪烁 3 秒钟; 6.在以上步骤中如果拨下拨码开关K8,系统则回到起始状态。 4 4.优化系统功能及设计方案.优化系统功能及设计方案 鉴于三色 LED 灯的后两位还没有用,我们因此考虑利用它们。 2 因为题设中要求的速度有基本速度、优秀速度、当前工作速度。在实际生产过程中,往 往需要了解一下总的平均速度。以此,我们利用已有的工件总数, 在这个基础上,我们对总 时间进行统计,用工件总数除以总时间就得到总的平均速度。 再对这个速度进行每一位拆分,利用字型码表进行查表显示,再加以颜色区分即可。 以上就是我们扩展的设计方案。 5 5.软件设计功能流程.软件设计功能流程 设置初始条件 ① N 是否启动? Y 是否中断? Y 中断服务程序 N 计数开始 比较速度执行 相应程序 是否启动? N 返回①位置 Y 显示当前数量 和工作速度 N 是否按键? Y 转换显示 图一 功能流程图 该功能流程图,是依据设计任务规定而设计的,这个基本的概念性功能流程图描述了各 3 个功能模块之间的逻辑关系。 一目了然的概括了本次程序设计的基本思想。 进入该程序时首 先设定初始状态。然后判断是否停止计数, 并且还要判断中断请求的到来与否。 在进行计数 的时候主要是判断脉冲的跳沿的变化, 有了跳沿变化还要检测是否停止, 因为这个是最强的 条件,一旦停止就得跳到程序的开始从新计数。 接着就进行计数,这就需要对其进行统计数 据的显示操作以及当前速度的显示操作。 因为还涉及到按键设置, 故接着要检查按键是否按 下,如果按下就需要把输入信号转换为速度值,并对其进行显示。这个过程如果中断到来, 则需要把当前速度和基本速度、最优速度进行比较并做出相应操作。 根据以上的情景分析得到功能流程图如上图。 根据功能流程分析,系统需要判断外部输入(启动、设置等按键)进入不同算法,划分 基本模块:1.主程序模块 2.键盘中断模块 3.显示模块 4. 扫描模块。组员们分工合作,任 务明确。 6.6.主程序及子模块流程图主程序及子模块流程图 系统硬件连接系统硬件连接 主程序流程图主程序流程图 4 开始 初始化 ① K8 启动? Y N 调用显示基本速和优 秀速程序 XS3,XS4 中断服务程序INTP1S E自加1 定时中断请求? Y 每分更新当前速度 N 调用计数 SS1 E=5? N 判断电平跳转? Y E清零 N 跳转到DISP F-A 1A2 是否≦0 Y Y N K8 启动? N 返回①位置 调用蜂鸣KSM Y D2自加 1 返回 调 用 显 示 程 序 DISP—ZIXING 和 DISP 显示总 数和当前速度C F-B 1B2 是否≧0? 调用扫描程序SM N Y 调用闪烁程序 N 是否按键