热敏电阻温度测量控制步进电机设计说明书.docx
《热敏电阻温度测量控制步进电机设计说明书.docx》由会员分享,可在线阅读,更多相关《热敏电阻温度测量控制步进电机设计说明书.docx(22页珍藏版)》请在冰豆网上搜索。
热敏电阻温度测量控制步进电机设计说明书
微机接口技术课程设计说明书
课程名称:
热敏电阻温度测量控制电机
学院:
机械工程学院
专业:
机械设计制造及其自动化
组员:
徐江南徐立王勇王强
指导老师:
陈志平赵骆伟王万强
孔敏刘巍张巨勇
日期:
2011年7月4日
目录
1.课程设计任务书…………………………………………………1
1.1任务要求……………………………………………………1
1.2设计项目……………………………………………………1
1.3主要技术要求………………………………………………1
1.4主要完成任务………………………………………………1
1.5提交成果……………………………………………………1
1.6注意事项……………………………………………………2
2.说明书正文………………………………………………………3
2.1前言…………………………………………………………3
2.2现状…………………………………………………………4
2.3任务分析与方案设计………………………………………5
2.4系统电路原理图……………………………………………6
2.5元件参数选择及清单………………………………………16
2.6电路的调试…………………………………………………17
3.心得体会…………………………………………………………19
4.参考文献…………………………………………………………21
5.附录………………………………………………………………22
1.课程设计任务书
1.1任务要求
在Dais实验台基础上设计并调试一个外接口电路,能够测量和显示所测量(依具体题目定)的值,且具有一定的控制功能,编程并调试完成整个开发系统。
每组一题,分别由3~4位同学合作完成。
1.2主要技术要求
1)测温题要求温度测量:
0摄氏度~+100摄氏度;
电机转速题要求:
0~1500r/min;称重题要求:
自行设定。
2)显示精度:
0.1g
1.3主要完成任务
1、查找相关资料,确定课程设计方案;
2、微机接口电路硬件的焊接、装配、逐步排除故障及调试;
3、用Protel2004绘制微机最小系统配置原理图;
4、用Protel2004绘制相关项目的接口原理图;
5、编写有关项目的程序,并进行调试;
6、按照相关项目内容要求,上机进行联调;
7、编写课程设计报告。
1.4提交成果
1).课程设计说明书一本。
(电子文档和打印稿各一份)
要求:
内容完整,图表完备,条理清晰,分析有据,计算精确。
所附电路图布局合理,清晰完备,图形和符号要规范。
2).所用元器件清单。
3).电路实体一套。
要求:
该电路实体必须是经过自己安装调试通过并达到性能指标要求的电路实体。
1.5时间按排
6月23日~7月6日,地点:
机械学院微机原理实验室
6月23日上午,分组及分配课程设计任务
下午,查找相关资料,初拟总体方案。
6月24日分发参考资料、讨论确定总方案,上机熟悉Protel2004软件。
6月25日~6月28日完成微机最小系统配置原理图、相关项目接口电路原理图及各项目接口;借领工具、PCB板及相关器件。
6月29日~7月2日各项目PCB板的焊接、装配、调试等工作、相关程序设计、编写及联机调试。
7月3日~7月4日答辩及验收课程设计成果(归还所借工具,上交课程设计成果)。
7月5日~7月6日提交修改后的最终报告及成果。
1.6注意事项
1、按时上下机,严禁玩游戏,注意公共卫生。
2、爱护实验室内一切实验设施,违者按零分计。
3、爱护借用的工具,丢失工具者按原价赔偿。
故意损坏工具者按零分计,并原价赔偿。
4、注意安全。
下课时关闭总闸与空调,拔掉电烙铁,关好门窗。
5、不准用笔在实验桌上乱写乱画,否则按零分计。
2.说明书正文
2.1前言
从晶体管、集成电路,到超大规模集成电路,日新月异的微电子技术是计算机技术飞速发展的基础。
计算机的发展,加快了信息技术革命,使人类进入信息时代。
多媒体计算机技术的应用,实现了文字、数据、图形、图像、动画、音响的再现和传输;国际互联网(Internet)把世界联成一体,形成信息高速公路,令人真正感到天涯咫尺。
以半导体集成电路为中心的微电子技术的进步,使计算机向着微型、高性能、低成本的方向迅猛发展。
至今,集成电路已发展到第四代,即超大规模集成电路(VLSI)。
今天的微处理器,不仅CPU,而且连同存储器、输入/输出接口等电路也做在同一块硅片上。
微处理器的飞速发展使微机高度微型化、快速化、大容量化和低成本化,单台微机的性能已达到中型机以上水平。
微型计算机软硬件不断翻新,但工作原理基本上没变,通过学习微机的工作原理、CPU结构和功能、各种寻址方式和微机的指令系统、汇编语言程序设计、中断的工作原理及处理方法和接口技术,以期能在理论上及实践上掌握和应用微型计算机的主要技术。
微机原理是一门专业基础课程,它的主要内容包括微型计算机体系结构、8086微处理器和指令系统、汇编语言设计以及微型计算机各个组成部分介绍等内容。
要求学生对微机原理中的基本概念有较深入的了解,能够系统地掌握微型计算机的结构、8086微处理器和指令系统、汇编语言程序设计方法、微机系统的接口电路设计及编程方法等,并具有综合运用所学知识分析问题和解决问题的能力
本次温度测量控制程序设计采用汇编语言程序编写,要求设计者具备微机原理的理论知识和实践能力。
微机原理和接口技术是一门实践性强的学科,不但要求有较高的理论水平,而且还要求有实际的动手能力。
本课程设计的主要目的是提高实践能力,包括提高汇编等语言的编程能力及对接口等硬件的理解分析能力和设计接口电路的能力,在进行课程设计的过程中,通过让学生体验自己分析解决问题,从而帮助学生系统地掌握微机原理的接口技术的相关知识。
程序使用Dais实验台进行模拟,包括程序输入、调试、运行,最后进行结果分析,验证程序的正确性。
学习微机原理与应用的理论知识后,通过本次课程设计加深对它的理解和掌握。
在设计过程中,广泛查阅各种所需的资料,通过实践来加深和巩固理论,同时将自己对这门技术的理解应用在设计当中,提高实践水平和综合能力。
2.2现状
随着企业生产规模的逐渐扩大,对生产过程的自动化程度要求越来越高,系统控制在向着更加复杂,可靠性及精确性要求更高的方向发展。
这就要求必须有更加先进的控制系统与之相适应。
微型计算机自出现以来,便以其集中度高、功能强、体积小、功耗低、价格廉、灵活方便等一系列优点,广泛应用于国防、航空航天、海洋、地质、气候、教育、经济、日常生活的各个领域,并发挥着巨大的作用。
随着自动控制理论和计算机应用技术的发展,生产过程将进一步微机化、规范化和科学化,使各生产只能管理部门能够利用计算机终端通过电话线或光纤通讯电路与微机控制系统联网,随着从公用数据库中了解分析生产情况,以便对下一步的生产和技术改造进行决策,有利于提高生产率和产品质量。
本课题中,可以实时监控到环境中的温度,并以温度控制电机速度,既能了解分析情况,又能完成生产的自动化。
2.3任务分析与方案设计
2.3.1任务分析
热敏电阻温度测量控制电机原理是通过给热敏传感器一个温度,该传感器发生变化,从而使电阻或电容等参数发生变化,传出到A/D转换芯片。
转换成便于处理的数字信号输出到CPU运算控制。
CPU根据程序将这种结果输出到显示器。
直至显示这种结果。
利用实验系统上的0809作为A/D转换器,实验系统上的电位器提供模拟量输入,编制程序,将模拟量转换成数字,通过数码管显示出来。
再根据数码管显示的值来控制电机的转动,以及转动的快慢。
具体的分工由两人硬件,两人软件,徐立,王勇做硬件焊接工作,王强,徐江南做软件编程工作,最后一起联机调试。
2.3.2方案设计
(1)用热敏电阻测温度的方法,通过热敏电阻测得温度。
(2)将其转化为电压值,再由电压值转化成LED灯的显示值。
(3)其中根据LED灯的值来判断个状态的显示值,从来还确定步进电动机的是否转动。
(4)再者判断状态值大小,实现步进电动机的快慢速转动。
(5)步进电动机的转动实现降温的效果。
2.4系统设计与开发
(1)接口电路设计
输入接口电路的功能是将传感器输出的电信号经过必要的转换或信号放大与处理,使之符合微机控制系统要求。
接口电路的组成与传感器输出测量信号的形式有关,与微机处理系统功能要求有关,因此可根据输出信号的形式和系统的功能要求决定接口电路的类型
热敏电阻测温接口电路(如图2)
1、传感器激励电源
电路由U1、D1、R1、R2、R3、C1、RW1组成产生稳定的电压源,即传感器工作电压。
热敏电阻传感器在工作时,希望它只跟测试温度发生对应关系。
但现实中,热敏电阻传感器的激励电源引起的微小变化将严重影响测试的精度,必须要专用的稳压源供电。
在电路中R1、D1、C1为运算放大器同相输入端提供稳定的基准参考电压,输出电压经R2、RW1、R3分压,经RW1可调端反馈到运算放大器的反相输入端,这样调整RW1就能输出稳定的设定电压值。
2、传感器接口电路
传感器接口是连接传感器与放大器的端口,电路由R4、R5、R6、RW2、C2、Q1组成。
热敏电阻传感器在温度变化场下将产生电阻率的变化,为获得对应的电压值,将热敏电阻传感器RD-A设计放置在Q基极的上偏置;与下偏置RW2、R4、C2(C2为旁路电容)共同组成Q1基极的偏置电路,调整RW2就能改变基极电压的起始点,上偏置热敏电阻传感器随着温度的变化其阻值也跟着变化,进而改变了基极Ib的大小,由于Q1的放大作用将发射电流Ie放大,流经R6时产生随温度变化的对应电压值。
3、跟随器
其功能是输入输出阻抗和放大电流的作用。
4、十倍放大器
将电路中的R7、R8、R9阻值设计为10K欧姆,这样运算放大器将组成十倍的反相运算放大器,RW3为调整U3的共模抑制电压,调整时,使U3的同相输入端、反相输入端的输入为零(即2、3端接地),调整RW3使U3的6脚输出为零。
5、可谓反相器
电路中R10、R12、RW5、R11组成可调反相放大器,调整RW5就能微调U4放大倍数,RW4为调整U4的共模抑制电压值大小。
6、信号输出接口
由RW6、R13、C3、JP1组成信号输出接口电路。
调整RW6就能改变输出电压大小,这样能确保在最大量程时,输出电压不超过5V。
(2).步进电机(如图1)
步进电机驱动原理:
是通过对每相线圈中的电流的顺序切换来使电机机作步进式旋转,切换是通过单片机输出脉冲信号来实现的。
所以调节脉冲信号的频率便可以改变步进机的转速,改变各相输入脉冲先后顺序,可以改变点击的旋转方向。
1.设计原理图:
2.设计过程说明:
(a)本实验中8255的地址为0FFD8H-00FFDBH,A口设置为方式0输出,B口为方式0输出
(b)本实验所使用的步进电动机参数为直流5V,电动机绕组四相组成,即BA、BB、BC、BD,驱动方式为二相激励方式
(c)输出脉冲数值(励磁数据)顺序为03H(初始化励磁数据)、06H、0CH、09H,并将低四位输出到8255的PA3-PB0,由此驱动步进机旋转
(1).转速控制:
调节脉冲信号的频率便可以改变步进机的转速
(2).位置控制:
改变脉冲信号的个数便可以改变步进机的位置
(3).方向控制:
改变各相脉冲的先后顺序,便可以改变步进机的转向
(3).8255可编程并行接口芯的连接方法
1.用8255APA0-PA3输出脉冲信号,驱动步进电机转动。
2.硬件线路原理图如图。
3.将步进电机插头连到DVCC-8086H中间5芯插座J1(步进电机驱动输出插座)上。
4.将8255CS连到060H。
(4).A/D转换程序设计
A/D转换程序主要由三大块组成:
(1)A/D转换器启动程序;
(2)查询等待转换结束程序
(3)读取转换结果程序
A/D转换程序设计常采用三种方式:
1、查询方式2、延时方式3、中断方式
1.查询方式
利用程序查询结果信号EOC是否到,若EOC为高电平,说明转换结束,可读出转换结果。
2.延时方式
延时方式是利用延时程序等待转换结束。
3.中断方式
中断方式是利用转换结束信号发出中断申请,中断响应后在中断服务程序中处理转换结果。
(4).电路原理图
如图分别是步进电机控制接口电路(图1),热敏电阻测温放大电路(图2),微机最小模式系统配置原理图(图3和图4)
图1步进电机控制接口电路原理图
图2热敏电阻测温放大接口电路原理图
图3微机8086最小模式系统配置(连接LED灯)
图4微机8086最小模式系统配置(连接步进电机)
(5)软件设计开发
图5热敏电阻温度测量控制电机程序流程图
流程图讲解
首先是初始化一下,自己给LED灯一个初始的6位数可以是000000,然后通过子程序BCD查表显示出来,再返回来从外界测的一个温度,输入温度值,通过一个线性关系T=a*U+b,51*U=AL,AL为最终显示,要是最终显示等于,即T=5/4*AL-58,将转换后的T值的高四位和低四位分别放入LED灯的最后两位,然后比较其大小,LED第一盏灯表示的是状态灯,温度值大于90的时候状态为3,当大于50小于90时状态为2,当温度值超过50时步进电机转动,LED灯第一个数的状态为2时慢转,状态为3时快转,然后返回初始化阶段,这样不停地给温度值,显示温度值,步进电机快转慢转,实现降温的效果,例如传感器放入室温中,该数经放大电路,A/D转换进入,再经过线性变化,室温将会在LED显像管中显示。
如果将传感器放入50℃以上的热水中,那么LED上的状态灯会显示数值2,不光LED灯会显示温度,而且步进电机也会随之慢慢转动,可以说相当于在让其降温,如果将传感器放入90℃以上的开水中,那么LED上的状态灯会显示数值3,LED照样显示温度,且步进电机快速转动,让其快速降温,完成一个自动降温过程。
2.5元器件清单及参数选择
名称
型号
数量/个
单价/元
店名(淘宝)
电阻
1K
10
0.01
辉煌电子200
5.1K
2
0.01
穆玉娇+b
7.5K
1
0.01
穆玉娇+b
10K
7
0.01
辉煌电子200
500K
1
0.01
nj123128272
可变电组
2K
1
0.58
hll8612
5K
1
0.58
10K
4
0.58
集成芯片
LM741CN
4
2.00
hanxinq88
电容
0.33uF
1
0.08
重庆强粤电子
1uF
2
0.08
simpleli
稳压二极管
6.8V
1
0.18
xanycall
三极管
未知
4
0.16
深圳市鹏程电子
C2655
1
0.16
单电源:
+12V,+5V
分辨率:
8位
显示精度:
0.1
转换时间:
取决于时钟频率
2.6电路的调试
硬件调试
电路板焊接完成后,连线接通电路板,用万用表测电路板输出端的电压,先顺时针缓慢调整电位器RW6,这时万用表的电压读数会随着RW6的变化而发生递减(递增)的变化,当停止调整RW6时如果读数继续跳动而不会停止,说明焊接上可能出现虚焊或者元器件没焊牢。
如果读数停止跳动,当继续旋转电位器RW6,电压继续发生变化,通过电位器RW6的顺时针或逆时针的旋转,如果万用表中电压的读数能够从正直递减到零(从负值递增到零),说明硬件调试成功。
软件调试
设计的程序是使用汇编语言编写的。
程序完成后就可以对它进行编译和执行,如果发现有错误,则返回程序中修改,完成后再次编译和执行,就这样周而复始的重复进行,直到没有出现编译错误之后就可以运行了。
运行的时候也有问题出现。
例如程序的结构有问题,对于寄存器的使用不合理,或对于寄存器的重复使用导致数据混乱,循环不能正常的结束等问题。
要解决这些问题就要对汇编用深入的理解,画清楚流程图,使用结构简单的循环,分布编写程序,同时注意对程序的注释可以减少问题。
对于寄存器的使用问题可以才用入栈出栈来保存部分寄存器的值来安排寄存器的使用。
对于循环,注意结束循环的条件,避免在程序中产生无限循环的情况,无限循环显示的除外。
对于一些寄存器的隐含用法要引起注意,对于控制端口地址的写入,数据的输出,都有特定的寄存器提供使用。
但请切记,工作台要适当的关机,以免烧坏一些元件
联机调试
联机运行时,数字温度计并不能得到预期效果,LED只是显示了一个数字,不能根据温度的变化转换成不同的数字,经检查,问题出在编写的程序上。
需要重新转到程序开始处运行,重新读取模拟量才能进行转换。
另外,在调试时发现出现的温度与寄存中的数据不同,显然在程序中受到了改变,需要在程序中保存寄存中的温度值,不使其受到循环移位的影响。
调试结果
用温度传感器,测量热水的温度,随温度的变化,LED显示管显示的数字随之改变。
在开始时,会看到数字不断变大,经过一段时间后,温度会一个较为稳定的数字左右变换。
调试过程遇到的问题及解决办法
(1)LED灯上的数据为什么会不停地闪?
解答:
经过调试,将延时程序中CX的值变小,将闪的速度加快,有肉眼看几乎不变动,即不闪,可以使LED灯持续显示。
(2)当步进电动机转的时候,为什么LED灯不显示温度值了?
解答:
由于调用子程序步进电动机时,AL中的值发生了改变以至于不会显示当前温度值,只要用到AL时先将该值存到其他寄存器,然后用进出栈保护现场即可
(3)步进电动机的快慢怎么调?
解答:
通过子程序延迟时间的长短可以调节步进电机的快慢
(4)最后所有问题都搞定时,发现LED灯虽然数值有显示了,但是并不是我们所测的的温度,和实际温度值不一致?
解答:
因为实际的温度通过传感器,A/D转换,将温度值变为电压值,在变成LED灯上的值,中间的过程不是直接给值,而是有一种对应关系,即是一种线性函数关系,所以在编写程序的时候要留意,要将这个关系写进去,使将要在LED灯上显示的的数通过线性函数转化成温度值再显示
3.心得体会
以前从没有学过关于汇编语言的知识,起初学起来感觉很有难度。
当知道要做课程设计的时候心里面感觉有些害怕和担心,担心自己不会或者做不好。
但是当真的要做的时候也只好进自己最大的努力去做,做到自己最好的。
我们在这个过程中有很多自己的感受,我想很多同学都会和我有一样的感受,那就是感觉汇编语言真的是很神奇,很有意思。
我们从开始的担心和害怕渐渐变成了享受,享受着汇编带给我们的快乐。
看着自己做出来的东西,心里面的感觉真的很好。
我想微机原理课程设计和其他课程设计有共同的地方,那就是不仅加深和巩固了我们的课本知识,而且增强了我们自己动脑,自己动手的能力。
但是我想他也有它的独特指出,那就是让我们进入一个神奇的世界,那就是编程。
对于很多学过汇编或者其他的类似程序的同学来说,这不算新奇,但是对于我来说真的新奇,很有趣,也使我有更多的兴趣学习微机原理和其他的汇编。
在这次微机原理课程设计的过程中,我做的是“热敏电阻温度测量控制电机”的软件部分。
我学会了微机原理的一些应用思想,设计思路,加深的对芯片功能与技术参数等的理解。
编码器的实现,既用到了硬件方面的知识,又与软件方面紧密的结合,是计算机科学与技术专业基础且典型的综合应用型的设计。
该课题其原理和设计思想可以作为许多功能强大的课题中的基本素材。
同时我明白,要做好一个课题,细心,耐心,好奇心和同学之间的有效合作都是不可缺少的,要将书本知识与实际操作紧密联系起来,在实践中发现和解决问题是非常重要的。
同样课后整理对课程设计是非常重要也是必不可少的,特别是画原理图等方面要花一定工夫;在实验的过程中也出现了一些问题,大部分来自自身的疏忽与对知识掌握的不牢固,这些方面是要加强的!
通过老师的帮助,在解决问题的过程中,让我们对问题的认知更加深刻了,这些都将有益于我们学到更多更为有用的东西。
同时也知道了团队合作的重要性,在实验中,同组成员在一起发现问题、讨论问题,大大提高了解决问题的速度。
同时,通过课程设计大家得到了很好的锻炼,也期待我们应该有更多实际操作的机会,加强合作与创新方面的能力。
总之,这次课程设计对于我们有很大的帮助,通过课程设计,我更加深入地理解了,微机原理课程上讲到的各种芯片的功能,以及引脚的作用,同时加深了对于主要芯片的应用的认识,同时在试验室的环境里熟悉了汇编程序的编写过程和运行过程,最后还提高了自己的动手能力。
感谢老师的悉心指导。
4.参考文献
1.微机原理与接口技术(第2版)彭虎周佩玲傅忠谦编著电子工业出版社
2.微机原理与接口技术学习指导(第2版)彭虎周佩玲傅忠谦编著电子工业出版社
3.微机原理与接口技术课程设计李国栋汪新中陆志平周盛华编著浙江大学出版社
4.XX网站
5.附录
5.1程序设计清单及注释
CODESEGMENT
ASSUMECS:
CODE,DS:
CODE,ES:
CODE
ORG3390H
JN:
JMPSTART
ZXKEQU0FFDCH;字形口地址
ZWKEQU0FFDDH;字位口地址
IOCONPTEQU0FFDBH;8255控制端口地址
IOBPTEQU0FFD9H;B口端口地址
IOAPTEQU0FFD8H;A口端口地址
LEDDB0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H
DB88H,83H,0C6H,0A1H,86H,8EH,0FFH,0CH,0DEH,0F3H
BUFDB?
?
?
?
?
?
ADPORTEQU0FFE0H
START:
MOVBUF+0,00H;初始给各BUF位一个值0
MOVBUF+1,00H
MOVBUF+2,00H
MOVBUF+3,00H
MOVBUF+4,00H
MOVBUF+5,00H
A1:
MOVAL,00H;选择IN0端口
MOVDX,ADPORT
OUTDX,AL
CALLBCD;调用子程序BCD
MOVDX,ADPORT
INAL,DX;取AD转换后得到的数据到AL
MOVAH,00;将AH清零
MOVBL,9;将数值9存入BL
MOVAH,00H;将AH清零
DIVBL;将AL中的值除BL中的值
MOVBL,7;将数值7存入BL
MULBL;将AL中的值乘BL中的值
SUBAL,47;将AL中的值减47
CALLXY;调用子程序XY
JMPA1;循环P0,使程序反复执行
XY:
MOVCL,AL;将AL中的值存入CL
PUSHCX;CX进栈
MOVAH,AL;将AL中的次低位和最低位各放入BUF+4和BUF+5
ANDAL,0FH;将AL中高四位清零
MOVBUF+5,AL;将AL中的值放入BUF+5
ANDAH,0F0H;将AH中的低四位清零
MOVCL,4;将4存入CL中
SHRAH,CL;将AH右移四位
MOVBUF+4,AH;将AH中的值放入BUF+4