步进电动机控制系统设计论文_第1页
步进电动机控制系统设计论文_第2页
步进电动机控制系统设计论文_第3页
步进电动机控制系统设计论文_第4页
步进电动机控制系统设计论文_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

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

文档简介

1、学习与实践计划报告。设计题目:步进电机控制系统的设计学校:机电工程学院。专业:机械设计、制造及其自动化类别:姓氏:编号:讲师:教务系统 目录一、设计任务要求.2方案比较和评价证书.二2.1选项1.22.2选项2.22.3最终计划.2.系统工作II四。硬件设计.34.1硬件原理框图.34.2最低模式系统.由8086 CPU 4组成4.3外围接口电路部分.四4.4步进电机模块.54.5 LED模块和8279键盘控制模块.64.6系统代码.七软件设计.七5.1主程序流程图.85.2延期程序流程图.9不及物动词调试和测试.106.1硬件测试.106.2软件测试.106.3最终结果测试.11七。芯片信息

2、.117.1 8279可编程芯片:.117.2 8255并行接口芯片.12八。课程设计概要.14九。附录软件设计前言.15X.总电路图.21XI。参考.22教师对.的评论.23一、设计任务和要求:设计:设计控制电路,要求:用8255输出电机激励脉冲。液位开关可用于控制转速。写一个程序,让步进电机正转10次,反转5次,然后正转10次,反转5次。(4)调整延迟参数,使步进电机的转速为每秒5转。方案比较和评估:2.1选项1:以8088CPU为核心,扩展8255A及相应的接口电路,产生步进电机所需的脉冲序列。脉冲序列经过驱动电路后,直接驱动步进电机,实现调速和方向控制。该系统的特点是:可以设定三种固定

3、的常用速度和一种可以无级调节的速度,操作简单可靠。2.2选项2:L297是一种电机专用驱动数字芯片,与L298配合使用来控制步进电机。用数字电路处理步进电机的控制信号,因为L297和L298的结合可以有效减少单片机I/O接口的使用,大大提高单片机的负载能力。但由于本课程设计中可用I/O充足,如果使用过多的数字芯片,必然带来成本高、电路复杂的弊端。因此,这种方案灵活性低,效率低,不利于步进电机的性能发挥。同时,很难处理每个信号。2.3最终计划:对比以上两种方案的优缺点,第一种方案简洁、灵活、可扩展,能够满足设计要求。因此,本设计采用第一种方案。系统的工作原理:本实验以8088CPU为核心,827

4、9,8253,8259,8251,8255,步进电机等主要芯片。用外部电路的四个开关和一个旋钮来控制步进电机的正反转和调速。一个开关S1控制步进电机的启动,一个开关S2控制步进电机的正反转。剩下的两个开关S2和S3的前三个组合00、01、10控制三个预置速度,不能调节,第四个组合11将由外电路的旋钮通过8255A和ADC0809控制。四。硬件设计4.1硬件原理框图1合71合7ADC08098253输出2IN7D0D7D0D78088控制机12VB A 12VB A 驾驶员ULN2803 b C C 滴滴答答阿扣PB0PB18255APB6PB7 PB2PB3PB4 PB5步进电动机步进电动机五

5、四S33S42一个S11S2S11S2图1系统硬件原理框图。4.2由8086 CPU组成的最小模式系统图2 8086最小系统结构示意图根据不同的用途,8086/8088系统可以有最小模式和最大模式两种系统配置。两种模式的选择主要取决于硬件。当CPU引脚MN/MX端接高电平+5V时,形成最小系统。4.3外围接口电路部分这部分设计使用了ADC0809采样电路、8255A接口芯片、解码器74LS138等。ADC0809的数据输出端口连接到8255A的端口A。同时,ADC0809采样的起始信号由定时器/计数器8253提供,时钟频率由系统应用时钟频率OPCLK提供。b口是时分复用的,有时输出,有时输入。

6、输入是控制信号,输出是电机驱动信号。系统代码表中显示了8253,8255A的地址。输入输出接口编码电路名称信号线注册访问8253IOY20#计数器40小时1号柜台41H2号柜台42小时控制寄存器43H8255AIOY3阿扣60Hb出口61Hc口62H控制寄存器63H4.4步进电机模块步进电机的驱动原理是通过切换各相线圈的电流,使电机步进旋转。驱动电路由脉冲控制,因此可以通过调节脉冲的频率来改变步进电机的速度。单片机最适合控制步进电机。此外,由于电机的转动惯量,其转速也会受到驱动功率的影响。当脉冲频率大于某个值(在本实验中大于100hz)时,电机将不再旋转。电机有四相(A、B、C、D)。按旋转的

7、步数可分为单4拍(A-B-C-D-A)、双4拍(AB-BC-CD-DA-AB)和单双8拍(A- AB- B- A)。该模块的主要功能是通过接收8255的C口输入信号来控制步进电机的旋转。a、B、C、D代表四个不同的相,分别连接到PC0、PC1、PC2和PC3,实现旋转控制。图4.4步进电机模块4.5 LED模块和8279键盘控制模块LED模块的主要作用是前四位显示步进电机的步数,第六位显示速度,最后一位显示正反转的符号;879能自动完成键盘输入和显示控制功能。键盘控制部分提供扫描工作模式,可连接64键矩阵键盘,可自动扫描摇动键盘,自动识别按下的按键并给出代码,可同时按下双键或N键进行保护。从键

8、盘接收的输入信息存储在器件的FIFO缓冲器中,当有按键输入时,它可以请求CPU中断。该键盘模块主要通过键盘输入来控制电机的旋转,以设定速度、正反转、步数和停止。图4.5 LED模块和8279键盘控制模块(1)4.6系统编码记忆解码芯片信号线地址232(两片)/Y0/Y10000000FFFH02000 - 02FFFH664(一件)/Y20400005FFFH有待扩大/Y3/Y4/Y5/Y6/Y70600007FFFH0800009 ffh0A0000BFFFH0c 0000 dffh0E0000FFFFFH4.7总电路图:见附表。软件设计软件设计主要是根据具体的硬件设计,用汇编语言编写具体的

9、控制程序来执行相应的控制功能;串行程序使控制更加方便。5.1主程序流程图5.2延期程序流程图不及物动词调试和测试通过软硬件的联合测试,系统达到了设计的基本要求,运行可靠稳定。在此基础上,系统可以更全面地生成波形,并为用户提供一个可操作的观察界面,更加方便,易于操作和检查。6.1硬件测试在计算机中通过相关实验测试相应的硬件,如下:855控制A、B、C和D相-检测8255;8279键盘显示实验-测试8279;七段数码管实验检测七段数码管;可编程定时器/计数器检测8253实验:串行通信检测8251电路;步进电机控制实验检测步进电机;6.2软件测试本系统的测试主要分为两个阶段:集成测试和验收测试。集成

10、测试,也称组装测试或联合测试,是将单元测试过的模块按照一定的策略组装起来,然后进行测试。实践表明,有些模块可以独立工作,但连接起来就不能正常工作。程序某些部分无法体现的问题,很可能会全局暴露,影响功能的实现。比如这个系统,需要调用很多其他的模块,所以这些模块写好测试之后,需要重新组装测试。验收测试是集成测试后根据任务说明书的要求进行的测试。验收测试一般采用黑盒测试方法。用户根据需求规格书中描述的系统功能,一步步验证每个功能点,看是否能满足所有的功能需求,检查系统的性能是否满足需求规格书中的要求。在软件调试过程中,串口助手COMPort.exe和邢燕集成开发软件的单步执行对整个程序的调试起着重要

11、的作用。通过串口助手,可以向寄存器发送有效的命令来控制步进电机,并进行适当的调试;通过单步执行程序,可以清楚地看到执行这条指令后各个寄存器变化的程序,判断这些变化是否在控制之下。如果这些变化是异常的,那么就很容易发现问题。在不断调试的过程中,我也遇到了很多问题。在老师、同学的帮助和指导下,一个个解决了这些问题,直到达到基本要求,达到预测的结果。6.3测试操作实验箱左上角有一个信号产生模块,左下角有一个开关输入模块。四个开关(S1、S2、S3、S4)分别连接到PB4、PB5、PB6、PB7。步进电机停止,正反转,通过开关的输入控制信号选择有级调速和无级调速。如下功能表:其中,无级调速是通过调节实

12、验箱左上角信号发生模块的旋钮来调节信号大小,然后通过A/D转换对信号值进行采样来控制延时来实现的。同时信号值会显示在屏幕上,通过屏幕上的数值可以知道步进电机速度的变化。结论:DC电机调速系统完全满足设计的基本要求,运行稳定可靠。电机的启动/停止和变化速度与预测结果相同。芯片数据7.1 8279可编程键盘/显示器接口芯片介绍879是一种可编程键盘和显示接口芯片。它不仅具有按键处理功能,还具有自动显示功能。具有键盘FIFO/传感器双重功能的879 64BRAM。键盘控制部分可以控制8*8=64个按键或者控制8*8阵列传感器。该芯片能自动消除键抖动,并具有双键锁定保护功能。在本实验中,我们将利用82

13、79的上述功能来设计点阵广告屏。首先介绍一下8279芯片:DB0 DB7:8位数据总线连接系统数据总线,传输CPU与8279之间的数据/命令。CS:当片选信号CS=0时,选择8279。WR:WR=0。控制8279写操作。A0:数据选择输入线,A=0,由CPU作为数据读取;A=1,CPU写数据为命令字,读数据为状态字。BD:消隐输出线。BD=0有效。当切换显示数据或使用消隐命令时,该信号将关闭显示器。CLK:外部时钟信号输入线,8279通过本地定时器将该信号转换为本地时钟。本地时钟的频率直接决定显示器的扫描时间,通常通过编程设置为100Hz。此时,每个显示数码管的选通时间为0.64 ms .当设

14、置8位和16位显示字符时,显示器的扫描周期分为5.1ms和10.2 ms .out A0 out a3:A组显示数据输出行。out 0 out B3:b组显示数据输出线。两组数据输出线可以独立使用,也可以组合使用,组合时OUTA3为最高位,OUTB0为最低位。SL0SL3:扫描输出线,有解码和编码输出两种工作模式。模式选择可以通过编程设置。RL0RL7:输入线,为键盘矩阵或传感器矩阵的列或行信号输入线。7.2 8255可编程并行接口芯片介绍855作为主机与外设的连接芯片,必须提供三个与主机相连的总线接口,即数据线、地址线和控制线接口。同时必须具备与外设连接的接口A、B、C口。由于8255是可编

15、程的,它必须有一个逻辑控制部分,所以8255的结构分为三部分:与CPU连接的部分,与外设连接的部分和控制部分。复位:复位输入线。当输入端为高电平时,所有寄存器(包括控制寄存器)清零,所有I/O端口设置为输入模式。82558255CS:片选信号线。当此输入引脚处于低电平,即/CS=0时,表示选择了芯片,允许8255与CPU通信;当/CS=1时,8255无法与CPU传输数据。RD:读信号线。当此输入引脚处于低电平,即/RD=0和/CS=0时,允许8255通过数据总线向CPU发送数据或状态信息,即CPU从8255读取信息或数据。WR:写信号,当这个输入引脚处于低电平,即/WR=0和/CS=0时,允许

16、CPU向8255写入数据或控制字。D0 D7:三态双向数据总线,8255与CPU之间的数据传输通道。CPU执行输入输出指令时,可以读写8位数据,控制字和状态信息也通过数据总线传输。PA0PA7:端口A的I/O线、一个8位数据输出锁存器/缓冲器和一个8位数据输入锁存器。PB0PB7:端口B的I/O线,一个8位I/O锁存器和一个8位I/O缓冲器。PC0PC7:端口C的I/O线,一个8位数据输出锁存器/缓冲器和一个8位数据输入缓冲器。通过设置工作模式,端口C可以分为两个4位端口。每个4位端口包含一个4位锁存器,可分别与端口A和端口B配合使用,可用作控制信号输出端口或状态信号输入端口。A0、A1:地址

17、选择线,用于选择8255的PA口、PB口、PC口和控制寄存器。八。课程设计概要:在摸索中前进作为微机课程的新人,步进电机调速系统课程设计最大的特点就是程序太复杂。不花些时间和精力制作这样的节目是很难的。从最基本的需求出发,一段一段的编译很繁琐,需要很多循环和嵌套,但是效率更高。实验过程中遇到了很多棘手的问题,但是汇编语言本身并没有其他高级语言那么好写,调试,实验箱也换了,所以刚开始的时候一有错误就觉得无从下手,走了很多弯路,就在实验室里不断摸索,查资料,终于有了一些线索。写串口程序的时候,遇到了很多困难。可以在串口助手上运行,但是不能在我自己的程序上运行。于是我不得不做出改变,做实验,忙得不可

18、开交。最后,凭借自己的努力,终于写出了程序,运行顺利。总的来说,这次实验,从最初确定方案,然后写代码,到最后调试,添加扩展功能,花了不少时间。终于取得了成果,宝贵的实习时间没有浪费。那是一种成就感。但是,该方案仍存在一些不完善之处,不够简洁、明确和充分,许多地方需要改进。本课程设计是我们所学的微机原理与接口课程的总结性实验,既巩固了我们的微机与接口技术理论知识,又增强了我们的思维、实践能力和学以致用的经验。虽然在实验中遇到了很多问题,但是这周的接口课程设计还是给了我很多收获。可以说是从零开始,老师只是给我们提供了基本的实验方法。我们使用的所有工作都是由我们自己完成的。我们需要查资料,整理整个实

19、验的设计思路,考虑实验要用的芯片,设计每个芯片的功能,包括实验芯片的连接,编程,这些都是我们自己完成的,极大的锻炼了我们的思维能力和动手能力。附录:软件设计程序*-;定义堆栈段;-栈段栈DW 256 DUP(?)堆栈结束;-;定义数据段;-数据段表1 DB 01H,03H,02H,06H,04H,0CH,08H,09H顺时针旋转脉冲列表表2 DB 09H,08H,0CH,04H,06H,02H,03H,01H逆时针旋转脉冲列表。RD DB 03H用于记录顺时针还是逆时针转动。SD DB 08H用于记录输入开关的速度。数据结束;-;代码段;-代码段假设CS:CODE,DS:DATA,ES:DAT

20、A开始:MOV斧,数据MOV DS,AXMOV,埃克斯MOV斯,偏置路;用SI指向上次正负的存储单元。MOV DI,偏移SD;使用DI指向存储速度信息的存储单元。MOV AL,0A4H初始化8253芯片,发送控制字,使用2号计数器。OUT 43H,AL;并且工作在模式2,只读写高位字节。MOV阿尔,17H853的2号计数器计算初始值,计1毫秒。42小时后,铝JMP支票;退出以检查交换机的状态程序并执行它。;-主要:MOV铝,90H初始化8255芯片,端口A是基本输入模式,端口BOUT 63H,AL;端口是基本的输出模式。MOV阿尔SI;当SI的数字为0时,它正向旋转,当SI为1时,它反向旋转。

21、化学机械抛光铝,00HJNE B0;-;步进电机;-人权部MOV;DH用来记录上一次转弯和现在转弯是否同向。化学机械抛光铝,00H如果DH为0,继续往同一个方向加一个BX,否则BXJE XA;指向标题1重新开始。A1: MOV BX,偏移表1;BX指着顺时针脉冲列表的标题MOVCX,0008H步进电机的步数是八。a2:MOV阿尔,BX出61H,铝MOV阿尔迪;检查DI的值以确定速度。CMP AL,01H调用延时程序控制步进电机速度I(开关控制)JE Y1CMP AL,02H调用延时程序控制步进电机速度II(开关控制)JE Y2CMP AL,03H调用延时程序控制步进电机速度III(开关控制)J

22、E Y3CMP AL,04H控制步进电机的速度(数控通过A/D转换JE Y4;延时大小,以控制速度),调速范围广。XA公司循环A2JMP A1;-;步进电机反转;-B0:人权部MOV阿尔;DH用来记录上一次转弯和现在转弯是否同向。CMP AL,03H如果DH是3,继续往同方向BX加一,否则BX JE XB;指向标题2并重新开始。B1: MOV BX,偏移表2;指向BX逆时针脉冲列表的标题MOVCX,0008H步进电机的步数是八。B2:MOV阿尔,BX出61H,铝MOV阿尔迪;检查DI的值以确定速度。CMP AL,01H调用延时程序控制步进电机速度I(开关控制)JE Y1CMP AL,02H调用

23、延时程序控制步进电机速度II(开关控制)JE Y2CMP AL,03H调用延时程序控制步进电机速度III(开关控制)JE Y3CMP AL,04H控制步进电机的速度(数控通过A/D转换JE Y4;延时大小,以控制速度),调速范围广。XB:BX公司环路B2JMP B1;-;调用延迟程序中转流程。;-y1:CALL DALLY;速度一JMP支票y2:CALL DALLY;速度二打电话给戴利JMP支票y3:CALL DALLY;速度三打电话给戴利打电话给戴利JMP支票Y4:调用DALLY1延时由A/D转换的数值控制,速度四档。JMP支票;-;测试开关状态程序;-检查:MOV铝,92H初始化8255芯

24、片,B口基本输入,初始化a。OUT 63H,AL;口基本输入在AL,61H读入端口B数据,即交换机状态。和AL,0F0H屏蔽低四位试验铝,10小时;检查PB4是否为1。JZ支票;如果是1,打开电机;否则,等待。试验铝,20小时;检查PB5是否为1,为1则正向旋转,为0则反向旋转。JZ湾;-;步进电机正转;-答:推斧头MOV阿尔SI;当SI检测为0时,为上次正转,DH赋值为0。化学机械抛光铝,00H不然上次就反了,DH赋1。JE X1JMPX2X1: MOV DH,00HJMP AAX2: MOV DH,01HAA: MOV DL,00H将正SI变为0。MOV SI,DL爆破筒化学机械抛光铝,3

25、0小时;检测到的PB6为0,检测到的0,PB7为0,为速度1。JZ苏杜1化学机械抛光铝,70H检测到的PB6是1,检测到的1,PB7是0,也就是速度2。JZ苏杜CMP AL,0B0H当检测到PB7为1,PB6为0时,为速度三。JZ苏杜3CMP AL,0F0H当检测到PB7为1,PB6为1,速度为4时。JZ苏都4;-;步进电机反转;-乙:推斧头MOV阿尔SI;当SI检测为1时,最后一次反转,DH赋值为3。CMP AL,01H不然上次就是正转,DH被分到4。JEX3JMP X4X3: MOV DH,03HJMP BBX4: MOV DH,04HBB: MOV DL,01H将SI的赋值反转为1。MOV SI,DL爆破筒化学机械抛光铝,10小时;检测到的PB6为0,检测到的PB7为0,为速度一。JZ苏杜1化学机械抛光铝,50H当PB6被检测为1时,PB7被检测为速度2。JZ苏杜CMP铝,90H当检测到PB7为1,PB6为0时,为速度三。JZ苏杜3CMP AL,0D0H当检测到PB7为1,PB6为1,速度为4时。JZ苏都4;-SUDU1: MOV DL,01H速度为1,DI赋值为1。MOVJMP梅因SUDU2: MOV DL,02H当速度为2时,DI被赋值为

温馨提示

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

评论

0/150

提交评论