中南大学微控制器课程设计 步进电动机位置测量与控制设计报告_第1页
中南大学微控制器课程设计 步进电动机位置测量与控制设计报告_第2页
中南大学微控制器课程设计 步进电动机位置测量与控制设计报告_第3页
中南大学微控制器课程设计 步进电动机位置测量与控制设计报告_第4页
中南大学微控制器课程设计 步进电动机位置测量与控制设计报告_第5页
已阅读5页,还剩36页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、中南大学微控制器综合应用平台 步进电动机位置测量与控制设计中南大学微控制器应用系统设计 课程设计报告设计题目 步进电机位置测量与控制 指导老师 吴同茂老师 设计者 专业班级 设计日期 2014.04-2014.05 目 录第一章 微控制器应用系统综合设计的目的及意义11.1 设计目的11.2 课程在教学计划中的地位和作用1第二章 步进电动机位置测量与控制设计任务12.1设计内容及要求1 2.1.1 必做实验部分12.1.2 选做设计部分22.2 课程设计的要求2第三章 总体设计方案2 3.1 设计思想2 3.2 总体设计流程图3第四章 硬件设计44.1硬件设计概要4 4.2 所用到的芯片及功能

2、说明44.2.1 芯片列表44.2.2 89C51的功能简介54.2.3 ADC0809的功能简介74.2.4 LCD12864F的功能简介84.2.5 74LS373的功能简介94.2.6 6264的功能简介104.2.7 74LS01 02 04的功能简介114.2.8 8279的功能简介114.2.9 DVCC-DJ4电机平台功能简介134.3 硬件电路设计系统原理图及其说明154.3.1 系统结构框图154.3.2 系统硬件系统原理图154.3.3 系统硬件使用说明21第五章 软件设计5.1 流程图及其说明225.1.1 AD采样子程序流程图225.1.2 键盘扫描与报警子程序流程图2

3、35.1.3 步进电机控制流程图245.1.4 LCD显示子程序流程图24第六章 系统调试及使用说明25第七章 总结与体会27参考文献28附件一 步进电动机位置测量与控制设计使用说明29附件二 步进电动机位置测量与控制设计程序清单31第一章 微控制器应用系统综合设计的目的及意义1.1 设计目的本课程的主要任务是运用所学微控制器技术、微机原理等方面的知识,设计出一台以80C32MCU为核心的单片机数据采集、通讯或测控系统,完成信息的采集、处理、输出及人机接口电路等部分的软、硬件设计。1.2 课程在教学计划中的地位和作用 微控制器应用系统综合设计是为测控专业微控制器技术课程而开设的课程设计教学环节

4、,其目的在于培养学生综合运用理论知识来分析和解决实际问题的能力,是通过设计以微控制器为核心的单片机检测系统,加深学生对微控制器技术的了解,进一步掌握其程序设计与硬件接口技术。第二章 步进电动机位置测量与控制设计任务2.1 设计内容及要求 本课程设计的重点是培养学生利用微控制器的硬、软件开发技术进行微控制器系统的设计与开发能力。具体设计内容包括两个部分。2.1.1 必做实验部分1步进电机控制2直流电机控制3扩展键盘显示接口实验4LED 16X16 点阵显示实验5LCD液晶显示接口实验6双积分式A/D芯片M C 14433的扩展接口实验7电机控制机电一体化实验平台实验8温度、压力测量与控制实验平台

5、实验2.1.2 选做设计部分步进电动机位置测量与控制设计,设计内容:掌握将步进电动机角位移变成直线位移和测量位置的方法。利用电机控制机电一体实验仪上的硬件电路,将步进电动机的角位移变成直线位移。并采用A/D0809转换器构成一个测量位置的系统。编制程序定位和测量机电平台上指针指示的位置。 设计要求:设计出电路原理图,说明工作原理,编写程序及程序流程图2.2 课程设计的要求 本课程设计涉及微控制器技术课程的基本概念和理论,主要要求学生掌握微控制器的指令系统、中断技术、总线扩展、模拟与数字I/O接口技术与通讯技术等,重点是培养学生掌握微控制器在自动化测控应用系统中的设计与开发方法。课程设计的基本要

6、求如下:1掌握单片微控制器硬件结构和工作原理、中断与定时系统、嵌入式应用、现场总线等基本概念和原理;2熟悉8/16位单片微控制器的主要功能单元和指令系统;3熟悉测控网络中嵌入式微控制器的应用和现场总线应用技术。4利用微控制器的接口技术进行简单的测控及自动化应用系统设计;5每人提交系统设计报告一份,现场演示验收设计系统。第三章 总体设计方案3.1 设计思想本次设计的目的就是将步进电机的角位移转换为线位移,通过机电平台可以轻松完成该转换。通过机电平台的IN0端反馈电压信号经过ADC0809转换成数字信号,但该数字信号不是所需要的十进制数字,而是16进制数据,编写算法将16进制数据转换成10进制数,

7、目标值的设定用8279键盘进行输入并且通过LCD显示出来。每一次AD采样出来的数据与程序运行时键盘输入的目标数据进行比较,控制电机左右转直到电机到达目的坐标为止。即电机每转一次反馈一次电压信号通过AD采样转换与原数据进行比较,在LCD上显示出来,并且控制电机进行下一步运转实现循环,通过设置对比标志位来跳出循环。3.2 总体设计流程图芯片初始化开始 YN等于小于大于步进电机右转步进电机左转输入值与采样值比较LCD显示采样值步进电机停止LCD同时显示目标值和采样值复位键是否按下终止YN报警过滤电路第三个数是否已经按下LCD显示目标值0809通道1采样键盘输入数据,进制转换 第四章 硬件设计4.1

8、硬件设计概要 本系统旨在通过步进电机平台将角位移转换为直线位移在LCD上进行显示,并能进行测量与控制。采用89C51作为系统的CPU,能把快擦写存储器应用于单片机中这使得在系统开发过程中修改程序十分容易,大大缩短了系统的开发周期。应用ADC0809的通道1来进行电机信号反馈采样,并通过LCD 12864F显示出所需数据。作为整个系统最主要的驱动部分,电机采用DVCC DJ4电机平台,能完好满足系统要求,将角位移转换为直线位移,并能通过端口IN0进行电压反馈。本系统的显示部分采用了T6963C 控制下的 12864F 128x64的LCD显示屏,能实现系统所需数据的动静态显示。人机对话部分采用了

9、键盘8279芯片消除键抖,进行系统数据的输入。报警电路运用89C51的P3.1端口进行端口置位将二极管点亮,复位电路运用89C51的P3.0端口作为置位信号对系统进行控制。4.2 所用到的芯片及功能说明4.2.1 芯片列表 89C51 1块ADC0809 1块LCD12864F 1块 74LS373 2块6264 2块74LS01 4块74LS02 2块74LS04 4块8279 1块 7SEG-MPX4-CA(LED) 1块 DVCC-DJ4 电机平台 1台4.2.2 89C51的功能简介图4.2.2VCC:供电电压。GND:接地。P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8T

10、TL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据地址的低八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时

11、,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。 P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。P

12、3口也可作为AT89C51的一些特殊功能口,如下表所示:口管脚 备选功能P3.0 RXD(串行输入口)P3.1 TXD(串行输出口)P3.2 /INT0(外部中断0)P3.3 /INT1(外部中断1)P3.4 T0(记时器0外部输入)P3.5 T1(记时器1外部输入)P3.6 /WR(外部数据存储器写选通)P3.7 /RD(外部数据存储器读选通)P3口同时为闪烁编程和编程校验接收一些控制信号。RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉

13、冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。/PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。/EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(00

14、00H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2:来自反向振荡器的输出。4.2.3 ADC0809的功能简介图4.2.31主要特性1)8路输入通道,8位A/D转换器,即分辨率为8位。2)具有转换起停控制端。3)转换时间为100s(时钟为640kHz时),130s(时钟为500kHz时)4)单个+5V电源供电5)模拟输入电压范围0+5V,不需零点和满刻度校准。6)工作温度范围

15、为-40+85摄氏度7)低功耗,约15mW。2内部结构ADC0809是CMOS单片型逐次逼近式A/D转换器,内部结构如图1322所示,它由8路模拟开关、地址锁存与译码器、比较器、8位开关树型A/D转换器、逐次逼近寄存器、逻辑控制和定时电路组成。3外部特性(引脚功能)ADC0809芯片有28条引脚,采用双列直插式封装,如图4.2.3所示。下面说明各引脚功能。IN0IN7:8路模拟量输入端。2-12-8:8位数字量输出端。ADDA、ADDB、ADDC:3位地址输入线,用于选通8路模拟输入中的一路ALE:地址锁存允许信号,输入,高电平有效。START: A/D转换启动脉冲输入端,输入一个正脉冲(至少

16、100ns宽)使其启动(脉冲上升沿使0809复位,下降沿启动A/D转换)。EOC: A/D转换结束信号,输出,当A/D转换结束时,此端输出一个高电平(转换期间一直为低电平)。OE:数据输出允许信号,输入,高电平有效。当A/D转换结束时,此端输入一个高电平,才能打开输出三态门,输出数字量。CLK:时钟脉冲输入端。要求时钟频率不高于640KHZ。REF(+)、REF(-):基准电压。Vcc:电源,单一+5V。GND:地。4.2.4 LCD12864F的功能简介图4.2.4引脚号引脚名称方向功能说明1GND-模块的电源地2VDD-模块的电源正端3VR-LCD驱动电压输入端4A0H/L并行的指令/数据

17、选择信号;串行的片选信号5R/W(SID)H/L并行的读写选择信号;串行的数据口6E(CLK)H/L并行的使能信号;串行的同步时钟7D0H/L数据08D1H/L数据19D2H/L数据210D3H/L数据311D4H/L数据412D5H/L数据513D6H/L数据614D7H/L数据715/RESH/L复位 低电平有效4.2.5 74LS373的功能简介图4.2.5373 的输出端 O0O7 可直接与总线相连。当三态允许控制端 OE 为低电平时,O0O7 为正常逻辑状态,可用来驱动负载或总线。当 OE 为高电平时,O0O7 呈高阻态,即不驱动总线,也不为总线的负载,但锁存器内部的逻辑操作不受影响

18、。当锁存允许端 LE 为高电平时,O 随数据 D 而变。当 LE 为低电平时,O 被锁存在已建立的数据电平。当 LE 端施密特触发器的输入滞后作用,使交流和直流噪声抗扰度被改善 400mV。引出端符号:D0D7 数据输入端OE 三态允许控制端(低电平有效)LE 锁存允许端O0O7 输出端4.2.6 6264的功能简介图4.2.6Intel 6264的容量为8KB,是28引脚双列直插式芯片,采用CMOS工艺制造A12A0(address inputs):地址线,可寻址8KB的存储空间。D7D0(data bus):数据线,双向,三态。OE:读出允许信号,输入,低电平有效。WE:写允许信号,输入,

19、低电平有效。CS:片选信号1,输入,在读/写方式时为低电平。CE:片选信号2,输入,在读/写方式时为高电平。VCC:+5V工作电压。GND:信号地。Intel 6264的操作方式由, CS, CE的共同作用决定 写入:当和为低电平,且和CE2为高电平时,数据输入缓冲器打开,数据由数据线D7D0写入被选中的存储单元。 读出:当和为低电平,且和CE为高电平时,数据输出缓冲器选通,被选中单元的数据送到数据线D7D0上。 保持:当为高电平,CE为任意时,芯片未被选中,处于保持状态,数据线呈现高阻状态。4.2.7 74LS01 02 04的功能简介 74LS02 74LS01 74LS041.74LS0

20、1:是集电极开路两输入端四与非门芯片,与之逻辑功能相同的还有74ls00,不同之处在于在74ls01可直接将几个逻辑门(集电极开路门(OC门)的输出端相连,这种输出直接相连,实现输出与功能的方式称为线与。即 Y=Y1·Y2但是普通TTL与非门的输出端是不允许直接相连的, 因为当一个门的输出为高电平(Y1),另一个为低电平(Y2)时, 将有一个很大的电流从VCC经Y1到Y2,对器件造成损坏。将几个OC门的输出端连在一起,公共负载电阻RL及电源Voc外接。当所有OC门的输出都是高电平时,电路的总输出L才为高电平,而当任一个OC门的输出为低电平时,总输出就是低电平。但这种与功能并

21、不是由与门来实现的,而是通过输出线连接来获得的,故称为线与。普通的TTL与非门不能实现线与。2.74LS02: 是集电极开路两输入端四或非门芯片,实现2输入四或非门功能。3.74LS04:输入反向器,实现输入信号的取反。4.2.8 8279的功能简介图4.2.81.引脚说明<1>DB0DB7:双向数据总线。在CPU与8279间做数据与命令传送。<2>CLK:8279的系统时钟,100KHz为最佳选择。<3>RESET:复位输入线。输入HI时可复位8279。<4>CS:芯片选择信号线。当这个输入引脚为低电平时,可将命令写入8279或读取8279的数

22、据。<5>A0:缓冲器地址选择线。A0=0时,读写一般数据;A0=1时,读取状态标志位或写入命令。<6>RD:读取控制线。RD=0时,8279输送数据到外部总线。<7>WR:写入控制线。WR=0时,8279从外部总线接收数据。<8>IRQ:中断请求。平常IRQ为LO,在键盘模式下,每次读取FIFO/SENSOR RAM的数据时,IRQ变为HI,读取后转为LO;在传感器模式下,只要传感器一有变化,就会使IRQ变为HI,读取后转为LO。<9>SL0SL3:扫描按键开关或传感器矩阵及显示器,可以是编码模式(16对1)或解码模式(4对1)。&

23、lt;10>RL0RL7:键盘/传感器的返回线。无按键被按时,返回线为HI;有按键被按时,该按键的返回线为LO。在激发输入模式时,为8位的数据输入。<11>SHIFT:在键盘扫描模式时,引脚的输入状态会与其它按键的状态一同储存(在BIT6),内部有上拉电阻,未按时为HI,按时为LO。<12>CNTL/STB:在键盘扫描模式时,引脚的输入状态会与SHIFT以及其它按键的状态同一储存,内部有上拉电阻,未按时为HI,按时为LO。在激发输入模式时,作为返回线8位数据的使能引脚。<13>OUTA0OUTA3:动态扫描显示的输出口(高4位)。<14>O

24、UTB0OUTB3:动态扫描显示的输出口(低4位)。<15>BD:消隐输出线。28279特点(1)可同时进行键盘扫描及文字显示;(2)键盘扫描模式(Scanned Keyboard Mode);(3)传感器扫描模式(Scanned Sensor Mode);(4)激发输入模式(Strobe Input Entry Mode);(5)8乘8键盘FIFO(先进先出);(6)具有接点消除抖动,2键锁定及N键依此读出模式;(7)双排8位数或双排16位数的显示器;(8)右边进入或左边进入。16位字节显示存储器。4.2.9 DVCC-DJ4电机平台功能简介 1. 系统组成连接图 图4.2.9.

25、1DVCC-DJ4机电实验平台可以和DVCC系列单片机实验仪相连,组成机电实验开发系统。DVCC系列单片机实验仪和PC机连接,实现实验程序的编写、加载和调试工作。系统连接如下: DVCC系列实验仪和DVCC-DJ4机电实验平台分别自带稳压电源,各自接通交流220V电源。 使用实验仪通讯电缆将实验仪和PC机连接起来。另外,为DVCC-DJ4设计了一款专用的测试板,可以方便地实现实验机和平台的测试及参数校正工作,减少了用户维护的工作量。2.工作原理(1)选择开关使用选择开关确定当前为直流电机工作还是步进电机工作,或处于停机状态。停机状态并不是断电状态,所以平台较长时间不操作,请关闭开关或拔掉电源插

26、头,以减少发热,提高机器寿命。(2)传动部分直流电机和步进电机通过橡胶传动带而联动。步进电机的轴同时连接蜗杆传动减速机构,再通过齿轮和皮带部分,将电机的圆周运动转换成皮带的水平运动。(3)指示部分皮带水平运动的位移量用指针和刻度尺来量化表示。刻度尺分为16大格,每大格长度为1厘米;每大格分为10小格,每小格长度为1毫米。皮带移动同时带动右端的一只多圈线绕电位器转动,通过改变电位器的接入阻值而改变反馈回的电压值,并送入控制接口插座的IN0脚。该反馈电压值可用于计算当前的位移量。皮带在16大格的行程范围内,位置反馈电压值在04.0V范围内线性变化。用户可以通过该电压值来计算或控制指针的当前位置。步

27、进电机轴上圆盘的角度刻度和面板上的定位箭头配合使用可以定量地表示电机的角位移量。(4)限位和断位机构 为了防止指针移出正常工作范围,造成皮带机构卡死或损坏,皮带的两端设有左右限位和断位机构。当指针到达左右限位或断位光敏管位置时,光敏管将产生左右限位或断位信号(低电平有效)。 机构产生的断位信号为平台控制电路使用。断位信号有效时,平台控制电路将强行切断电机的输出并点亮故障指示灯,启动故障蜂鸣器报警。这时,只能使用左移或右移键将指针移回正常工作范围,电机才会再次启动。 机构产生的左右限位信号分别送入控制接口的PI0和PI2口,并将左右限位信号的逻辑“与”结果送入控制接口PI6。用户可以灵活使用这几

28、个信号来控制电机的行为。(5)测速部分直流电机的轴连接一个测速圆盘(栅格盘),配合测速光敏管,根据电机的转速,产生一定频率的脉冲信号。该脉冲信号被送入控制接口插座的PI4脚,可采集用于计算电机的转速。(6)控制部分如图4.2.9.2所示图4.2.9.2(7)调节部分位于平台面板的右部,由零位调节(上)和满度调节(下)两个微调电位器组成。零位调节用于调节指针处于零刻度线时,IN0返回的位置反馈电压值,标准值应为0V。满度调节用于调节指针处于满刻度(16)线时,IN0返回的位置反馈电压值,标准值设应为+4.0V。为了保证实验的精度,在使用一段时间后,用户应及时校准零度值和满度值。(8)控制板电源引

29、出开关DVCC-DJ4机电平台使用自带电源。控制板电源引出开关的四位拨动开关拨到“ON”的位置,则机电平台的电源电压+5V、+12V通过25芯接口的12、22和13脚引出,向外部电路供电(平时不用)。由于实验仪使用单独电源供电,当和DJ4机电平台连接时,应将控制板电源引出开关的四位拨动开关拨到“OFF”的位置。出厂时,控制板电源引出开关的四位拨动开关的位置为“OFF”。4.3 硬件电路设计系统原理图及其说明4.3.1 系统结构框图电机输出A/D转换电机反馈部分人机对话部分 电机驱动电机控制部分 89C51按键复位灯光报警键盘LCD显示 图4.3.1 步进电机位置测量与控制系统结构框图4.3.2

30、系统硬件系统原理图 1.ADC0809电路原理图(1)0809的CLK插孔与晶振电路T4相连(2)将A/D区的参考电压VREF端连到+5V(3)EXIC1上插上74LS02芯片,将有关线路连好(4)将A/D区的D0-D7用排线与BUS2区的XD0-XD7相连 图4.3.2.1 图4.3.2.2通过自制晶振电路作为ADC0809的信号源,运用通道1对电机反馈信号进行采样并将数据传输给AT89C51。2. 键盘8279电路原理图(1)将数据区D0-D7用8芯排线连到XD区的XD0-XD7上(2)将WR、RD、ALE分别连到AT89C51区的XWR、XRD、ALE上(3)将KEY区的RST连到DVC

31、C实验仪键盘下边RST上(4)将KCS连到外部数据缓存区Y3上(5)将DVCC实验系统上J8插座与键盘显示板用扁平电缆相连(6)KEY区的A0连到BUS1区XA0上 图4.3.2.3 运用8279芯片通过74LS138进行译码对16个按钮进行编制,通过4位数码管显示数据方便优化操作。 3.LCD 12864 电路原理图(1)LCD液晶显示接口区/WR插孔接XWR(2)LCD液晶显示接口区/RD插孔接XRD(3)LCD液晶显示接口区/CE插孔接Y0(4)LCD液晶显示接口区C/D插孔接XA0(5)LCD液晶显示接口区/RESET插孔接/RST(6)LCD液晶显示接口区FS接地(7)用8芯排线将L

32、CD液晶显示接口区D0-D7连到XD0-XD7图4.3.2.4LCD作为系统的显示部分,通过数据端D0-D7与89C51进行数据传输,将所需数据显示出来。 4.89C51与电机系统原理图(1)机电平台的选择开关打在步进电机位置。(2)实验仪上P10P13接依此接机电平台A、B、C、D插孔。 (3)P0口作为数据口,进行系统各部分的数据传输,P3.0作为报警信号输出端接 L12,P3.1作为复位信号输入端接K1。 图4.3.2.5 图4.3.2.6利用自制电机电路来模拟电机平台,并与89C51连接受其控制,并将反馈信号输送给ADC0809进行采样转换。 5数据扩展系统原理图 图4.3.2.7 图

33、4.3.2.8 图4.3.2.9 图4.3.2.106.设计系统完整电路原理图 图4.3.2.114.3.3 系统硬件使用说明1、 在键盘输入数值(0-160),之后电机会自动运行至对应位置,同时LCD动态显示实时位置。 2、若输入数值大于160,L12会一直闪烁报警,直至开始并复位一次K1。第五章 软件设计5.1 流程图及其说明主程序流程图见第三章总体设计流程图,以下为各子程序流程图及简要文字说明。5.1.1 AD采样子程序流程图开始硬件初始化LCD显示采样值0809通道1采样 返回 图5.1.1 AD采样子程序流程图 ADC0809采用通道1对电机反馈信号进行采样,采样子程序无需进行循环,

34、由主程序进行控制循环,即每次调用AD采样程序,AD进行一次采样,并将转换值提供给主程序进行比较判定。5.1.2 键盘扫描与报警子程序流程图开始硬件初始化有键按下吗NY查字型代码计算键值 Y输出报警信号是否超过量程上限 NMY复位键是否按下YNM第三次按下返回N送LCD显示送显示缓冲区 二极管发光 图5.1.2 键盘扫描与报警子程序流程图 程序开始进行键盘扫描,当有键按下时进行计算键值,并将其值在LCD显示出来。当第三次按下键盘时,计算键值送于LCD即返回主程序。途中如果有键值超过设定量程值即进入报警子程序,只有当复位键按下时返回到键扫子程序。5.1.3步进电机控制流程图开始 输入值与反馈值比较

35、等于小于大于步进电机左转一步步进电机右转一步步进电机停止转动返回 图5.1.3 步进电机控制流程图 通过键盘输入值与电机反馈值的比较作为电机转动的控制信号,转动循环由主程序进行控制。 5.1.4 LCD显示子程序流程图开始 返回调整指针,指向LCD下一行预设数据显示在指定区域中待显示数据送入缓冲区置显示行初值,显示指针指向第一行清显示RAM区LCD初始化功能设置 图5.1.4 LCD显示子程序流程图第六章 系统调试及使用说明本次设计题目为步进电机的测量与控制,分析题目即可得到既要有测量部分,也要有控制部分。 测量,即能够将步进电机的角位移转换为直线位移,并能通过LCD显示出来。 控制,即由电机

36、的反馈信号通过编程指令控制其左转,右转以及停止。 因而该系统的调试可分为以下几个部分进行分部调试:1.电机调试部分本次设计所用到的电机为DVCC-DJ4电机平台,脉冲分配表如下表6.1 四相单四拍脉冲分配表 ABCDN1000N+10100N+20010N+30001所以由AT89C51 P1端口输出信号为01H 02H 04H 08H进行电机左转 08H 04H 02H 01H进行电机右转。在对电机转动进行调试时,发现电机速度太快,会影响到整个系统的精度,通过改变延迟时间,来改变电机转动的速度,从而能够优化系统的精度。 2.AD转换调试部分在进行AD0809调试的时候,由于线路过于冗杂,常常

37、出现运行结果不正确,而又无法准确知道是哪根线路的问题,只能重新拆线再次进行调试,经过多次连线发现,尽可能少的运用多条导线搭建成的长导线能很好的解决这个问题。AD转换调试的最重要一个部分就是如何将电机平台的反馈电压转换成LCD所需的二进制代码,最终通过进制换算,和运用乘4除5的算法解决这个问题。3.LCD调试部分 在进行LCD调试时,总是会出现键盘第三个数据按完,电机开始运转,而所按数据却并没有进行储存,LCD得不到显示缓冲数据,通过改变LCD子程序与电机子程序的顺序也不能完好的解决这个问题,于是在调用电机子程序之前,提前调用延迟程序。但在本次设计中,LCD一直不能显示动态数据,我认为是键盘子程

38、序的数据与LCD子程序的数据产生干扰,曾尝试过将LCD所需要的重要数据进行压栈处理,在调用键盘子程序时出栈,却同样实现不了LCD的动态显示,并且会使整个程序出现错误。 使用说明: 本系统按照系统硬件原理图连接好线之后,即可对程序进行链接编译运行。运行时,由键盘输入3位数据,待3位数据输入完成后,LCD显示屏将会显示出当前电机平台指针所在位置即坐标值,实现了电机系统的测量功能,以及刚输入的3位数据作为目标值。电机会自动判别进行左转还是右转,直到达到目标值,电机停转,实现了电机系统的控制功能。第七章 总结与体会 单片机是我们专业最核心的课程之一,所以这学期一直很努力在学习这门课,并在吴老师的实验室

39、按时完成每一次实验并认真反思体会。所以此次课程设计之前一直信心满满,希望能把学到的知识充分运用,因此我选了步进电机位置测量与控制这个稍微复杂一些的题目。从拿到课题的那一刻,便开始着想着系统总体设计方案,希望先从整体上把握设计流程。因为这次做的课程设计可以分为几个小部分,即AD0809的采样,LCD液晶显示以及电机的驱动,而这三个实验又正好是我们做过的实验的,于是我翻阅了实验指导书,很快就回忆起了相关实验内容。但是,我发现硬件实验需要用到DVCC-DJ4电机平台,虽然平时没有用到,但是吴老师把资料都发给了我,在自学这个过程中,我发现了自己很多的不足,单片机学得还是很不牢固,以至于一些指令都要去翻

40、阅课本才能明白其作用,这也颇有一种查漏补缺的意味,因为花了时间,所以解决了很多之前一直遗留下来的疑问。 在最后进行设计验收时,我发现AD转换时,对步进电机控制输入值和它实际位置有误差,一时也没想到很好的解决方式。吴老师告诉我,在硬件调试之前,首先就要运用学过的检测技术、误差原理等课程知识,对电机平台进行误差矫正,可是由于时间紧凑,我未完成此过程,这也是本次试验最大的失误。这是通过本次教训,更让我明白了做事前一定要事先规划好,把每种可能的情况都考虑到,尽量将失误降到最低。最后,还要感谢吴老师对我们的严格要求,才让我对自己更加严格,课程设计过程中才能认真完成,学习了很多知识。 参考文献1 高玉芹.

41、单片机原理与应用及C51编程技术.武汉:机械工业出版社,2011.82 凌玉华.单片机原理及应用系统设计.长沙:中南大学出版社,2006.53 刘乐善.微机原理接口技术及应用.武汉:华中科技出版社,2004.7 附录一:步进电动机位置测量与控制设计使用说明一、硬件电路连接:1.ADC0809电路(1)0809的CLK插孔与晶振电路T4相连(2)将A/D区的参考电压VREF端连到+5V(3)EXIC1上插上74LS02芯片,将有关线路连好(4)将A/D区的D0-D7用排线与BUS2区的XD0-XD7相连 2. 键盘8279电路(1)将数据区D0-D7用8芯排线连到XD区的XD0-XD7上(2)将

42、WR、RD、ALE分别连到AT89C51区的XWR、XRD、ALE上(3)将KEY区的RST连到DVCC实验仪键盘下边RST上(4)将KCS连到外部数据缓存区Y3上(5)将DVCC实验系统上J8插座与键盘显示板用扁平电缆相连(6)KEY区的A0连到BUS1区XA0上3.LCD 12864 电路(1)LCD液晶显示接口区/WR插孔接XWR(2)LCD液晶显示接口区/RD插孔接XRD(3)LCD液晶显示接口区/CE插孔接Y0(4)LCD液晶显示接口区C/D插孔接XA0(5)LCD液晶显示接口区/RESET插孔接/RST(6)LCD液晶显示接口区FS接地(7)用8芯排线将LCD液晶显示接口区D0-D

43、7连到XD0-XD74.89C51与电机系统P0口作为数据口,进行系统各部分的数据传输,P3.0作为报警信号输出端接L12,P3.1作为复位信号输入端接K1。5、步进电机控制(1)机电平台的选择开关打在步进电机位置。(2)实验仪上P10P13接依此接机电平台A、B、C、D插孔。(3)实验仪上地GND连机电平台地GND。二、使用说明 1、在键盘输入数值(0-160),之后电机会自动运行至对应位置,同时LED动态显示实时位置。 2、若输入数值大于160,L12会一直闪烁报警,直至开始并复位一次K1。附录二:源程序及其说明ORG 09F0HSTART: LCALL INIT ;初始化ST:LCALL

44、 KEY_INPUT ;键盘输入LCALL CHANGE_DATA ;改变键值CJNE A,#00H,ST ;如果改变键值出错,继续输入ST1:LCALL AD_AND_MUL ;AD采样并转换LCALL CHANGE_IN ;转换成显示码LCALL DISP ;显示LCALL MOV_XY;移动指针子程序CJNE A,#0FFH,ST2 ;如果结束了,跳至输入位置LJMP ST1;如果没有结束,则跳回采样位置,继续采样ST2:JB P3.1,ST2;等待用户输入LJMP ST;用户输入后返回继续输数;*;各种芯片的初始化子程序INIT: MOV 31H,#42H;设置数据缓冲区MOV 30H

45、,#80H;设置子位缓冲区 CLR P3.0MOV DPTR,#0B001HMOV A,#00HMOVX DPTR,A ;左入工作方式MOV A,#32HMOVX DPTR,A;写分频系数MOV A,#0DFHMOVX DPTR,A ;清显示缓冲区HA7S1:MOVX A,DPTRJB ACC.7,HA7S1RET;键盘输入子程序 KEY_INPUT: MOV 31H,#42H;设置数据缓冲区MOV 30H,#80H;设置子位缓冲区 MOV A,#0FFHMOV DPTR,#0B000HMOVX DPTR,A;把小数点送至0B000H中MOV A,#82HINC DPTRMOVX DPTR,A

46、;把字位码送至0B001H中MOV A,#0F7HMOV DPTR,#0B000HMOVX DPTR,A;把小数点送至0B000H中MOV A,#82HINC DPTRMOVX DPTR,A;把字位码送至0B001H中;段代码的功能是往第三个八段数码管里面输入一个小数点MOV A,#0AHMOV 44H,A ;把小数点的码表送至44H中HA7S3:MOV DPTR,#0B001HMOVX A,DPTRANL A,#07HCJNE A,#00H,HA7S4AJMP HA7S3;检测数据HA7S4:MOV DPTR,#0B000HMOVX A,DPTR;读数据MOV B,AMOV R1,#00HM

47、OV DPTR,#KEYTABHA7S5:MOV A,#00HMOVC A,A+DPTRCJNE A,B,HA7S6AJMP HA7SA;找到了相应的数字键,跳至数字键保存程序HA7S6:INC DPTRINC R1MOV A,R1CJNE A,#0BH,HA7S5AJMP HA7S7HA7S7:AJMP HA7S3HA7SA:MOV A,31HCJNE A,#44H,SAVEINC 31HINC 30HSAVE:MOV A,30HMOV DPTR,#0B001HMOVX DPTR,AMOV R0,AMOV A,R1MOV R0,AMOV B,R3MOV R4,BMOV B,R2MOV R3,BMOV B,R1MOV R2,BMOV R1,AINC 31HMOV DPTR,#CDATAMOVC A,A+DPTRMOV DPTR,#0B000HMOVX DPTR,AINC 30HMOV A,31HCJNE A,#46H,HA7SBL

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论