电动玩具车控制器设计

更新时间:2023-09-21 07:20:01 阅读量: 自然科学 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

电动玩具车控制器设计

1、 题意分析及解决方案

1.1 课程设计的名称及内容

本次课程设计的名称是电动玩具车控制器设计,电动玩具车的动力来自于电机旋转,由电机旋转实现车体运动,通过电机调速可实现玩具车速度控制,玩具车转向可用电机微动力实现转向的控制,用实现STAR ES598PCI 单板开发机和接口芯片设计一个电动玩具车控制器,能实现熟读可调,并能实现左转右转,转向同时转向灯提示。

设计要求如下:设计出争取的接口电路原理图,要求绘制出电路图,并注明期间的名称和管脚。正确运用所给器件布线,搭建硬件电路。选用汇编语言编写主程序和子程序。调试并排错,包括硬件电路和软件编程部分的错误。写出完整的课程设计总结报告,并按时提交。 1.2 题意需求分析

根据本设计给定的内容和要求,可以得出一些结论:本设计中需要用的主要是控制输入的芯片来带动小车的旋转电机,实现小车转向及速度的控制。其中最核心的是电机如何工作旋转控制小车的速度和转向,如果电机旋转的快那么小车的速度就快,反之则慢。而小车的转向控制需要通过两个电机共同旋转来模拟实现。假设电机1和电机2分别代表小车的左车轮和右车轮,那么只要使电机1的转速慢电机2的转速快,这样就可以实现小车向左转,同法也可以实现小车向右转。但是由于实现箱中只有一个直流的电机和一个步进电机,这两个电机是不同类的,所以我们不可以直接这样模拟。经分析我们可以有以下两种方案来模拟实现电动玩具车控制器的设计。一是使用两个电机来模拟实现,用直流电机的转动来表示小车做直线运动。初始设定小车的一个转速值为r0,将其视为一个参考点,如果我们想给小车加速只需调高转速即可,(减速也是同法只要减小转速)。而小车的转向问题,可以用步进电机的正转来表示小车向左转同时打亮小车的左转灯,用步进电机的反转来表示小车的右转同时点亮小车的右转灯。

二是只使用一个电机来模拟电动玩具车的控制器,小车直线运动的时候我们可以给电机一个固定电压,使其转速保持为固定的值设为R。我们规定电机转速加快大于R时,表示小车向右转同时小车右转灯亮;小于R时,表示小车向左转同时小车左转灯亮。这样就可以模拟实现设计要求的功能。根据实际情况分析,方案一更符合实际,我们选择方案一。

所以本设计中需要用到可编程接口芯片,用来控制步进电机的转向、直流电机速度控制信号及控制LED发光管亮灭进行输入和输出操作。经分析可知我们可以通过小键盘或逻辑开关来实现电机的速度、转向控制。在逻辑开关(或小键盘)

上设计几个按键:1.直流电机加速键2.直流电动机减速键3.步进电机的正转键5.电机的反转键。其功能是实现每按一次键,直流电动机的转速按约定的速率改变,步进电机的转向按指定的方向转动。综上分析,我们可以总结出本次课程设计解决解决的几点问题:控制信号输入输出的实现。实现电机的旋转。直流电机的加速、减速实现。步进电机的正反转。指示灯的显示。按键或逻辑开关的控制。数模转换原理。如何选择芯片。 1.3 解决问题的思路及方法

在STAR ES598PCI单板开发机种,接口可以使用8255A或8279。动力通过电机旋转实现。转向可以通过电机转动的快慢来实现。 1.3.1 硬件部分

在本实验中,要实现电机的控制,及相关功能的控制我们要用到小键盘或逻辑开关,而针对本实验采用逻辑开关要比较简单容易。虽然小键盘比较直观,而且是常用的输入设备,但是使用的过程比较烦,而且本实验中也不需要很多的按键就可以实现,所以我们采用逻辑开关就可以满足实验的要求,简单方便。

根据实验分析可知,我们可以用8255A芯片或8279A芯片,本实验不需要实现键盘/显示器的自动扫描,所以使用8255A即可。若使用8279A反而显复杂麻烦,而且8255A本身的接口就可以支持输入、输出的操作,8255A是可编程并行接口,具有传输速度快效率高等优点,既可以节约芯片的使用,又具有较好的性能,因此选用。小车的转向灯显示通过LED发光管实现。小车的转向及速度变化是通过电机实现的(速度直流电机、转向步进电机)。

综上分析,我们可以确定实现本次课程设计需要用到的部件有:8255A可编程并行芯片,逻辑开关,LED发光管,DAC0832数模转化芯片。8255是作为基本输入、输出接口使用的。 1.1 软件部分

8255A是一种可编程并行I/O接口芯片,可由程序来改变其功能,通用性强,使用灵活,通过8255,CPU可直接与外设相连接。对8255进行初始化,将8255的工作方式,设定为方式0,即PA、PB、PC三个口都能够进行输入输出操作。PB口作为输入口,与逻辑开关相连,逻辑开关表示要输入的数值或要控制的相关状态,PA口与PC口均作为输出口,其中PC口控制步进电机,PA口输出接发光管,控制其发光。这样就可以达到我们预期的功能,成为很好的输入输出之间的桥梁,并利用星研提供的软中断来实现实验所需的延时,同时结合逻辑开关,对其功能进行相应的控制。逻辑开关的测试,控制电机的转速与转向。通过程序控制发光管的点亮与否并将其初始化。DAC0832的初始化与直流电机相接,将数字信号转化为模拟量,控制直流电机的转动。 2. 硬件设计

2.1 可编程并行接口芯片8255A 2.1.1 8255A的作用

作为输入/输出接口芯片,本实验中8255A主要用来控制接收逻辑开关送来的状态量,并送出输出信号点亮指示灯,同时控制步进电机的旋转。 2.1.2 8255A的功能分析

8255A采用40脚双列直插式封装单一+5V电源,全部输入/输出均与TTL电平兼容,为可编程通用并行接口芯片。它有24条可编程的I/O引脚,与Intel系列微处理器完全兼容,直接的位清0或置1功能,简化了接口控制。8255A在

本设计中起并行传输接口作用,负责将从逻辑开关得到的控制信号控制电机和发光管。本实验中将8255A设置工作在方式0,PB口作为输入口,与逻辑开关相连,接收开关表示的数值和要控制的相关状态。PA口与PC口均作为输出口。

8255A是一种通用的可编程并行I/O接口芯片,又称“可编程外设接口芯片”。它是为8086/8088而设计的可以通过程序来改变其功能。本设计中8255A设置为方式0,在方式0下,CPU可以采用无条件读/写方式与8255A交换数据。如果把C口的两个部分用作控制和状态口,与外设的控制和状态相连,CPU也可以通过对C口的读/写实现A口与B口的查询方式工作。而本设计中CPU是采用无条件读/写方式与8255A交换数据的。

三个端口都可以作为输入端口或输出端口。A口有三种工作方式:即方式0、方式1和方式2,B口只能工作在方式0或方式1下,而C口通常作为联络信号使用,当然也可以作为输入/输出口使用。8255A的工作只有当片选CS效时才能进行。而控制逻辑端口实现对其他端口的控制。

图2-1 8255A的内部框图

控制字格式如下:本实验中8255A的控制字为82H

D7 D6 D5 D4 D3 D2 D1 D0 1 0 0 0 0 0 1 0 图2-2 8255A方式选择控制字 D7=1工作方式控制标志。D5D6组合设定A口工作方式:00~方式0。D4设定A

口的输入/输出,D4=0输出。D3 设定C口高位输入/输出选择,D3=0输出。D2设定B口工作方式选择,D2=0方式0。D1设定B口输入/输出选择D1=1输入。D0设定C口低位输入/输出选择,D0=0输出。

表2-1 8255A技术参数表

8255A技术参数 输入低电平电压VIL 输入高电平电压VIH 输出低电平电压VOL 输出低电平电压VOL 输出高电平电压VOH 测试条件 IOL=2.5MA IOL=1.7MA IOR=-400MA 规范值 大 小 0.8 -0.5 VCC 2.0 0.45 0.45 2.4 单位 V V V V V 输出高电平电压VOH IOH=-200MA 2.4 V 达林顿驱动电流IOAR -4.0 -1.0 mA 电源电流 ICC 120 mA 输入负载电流 IIL IIN=0~ VCC I/O mA 输出浮动电流 IOF VOR=0.45~ VCC I/O mA 表2—1的主要参数说明如下:8255A工作最大电流为120MA,VCC=-5V~+5V,I(DAR)工作电流最大为4MA。8255的输出电压不高,连接到LED时,最好加入一个驱动器起到电流放大的作用。

表2-2 8255A基本操作及端口地址选择、分配表

2.2 DAC0832数模转换器 2.2.1 DAC0832技术参数

表2-3 DAC0832技术参数及引脚图

(1)8-bit转换精度,转换时间1μs (2)转换输出电压范围0~5V

CS: 片选

AGND: 模拟信号地 DI0~数据线 DI7: Rfb:模拟量输出反馈端

VCC: 电源

GND: 数字信号地 VREF: 参考电压输

ILE: 数据允许锁

WR1:写输入锁存器信WR2:写输入寄存器信号 号

DAC0832引脚图

XFER: 输入寄存器数据传送控制 IOUT1,IOUT2::D/A变换器差动电流输出端 2.2.2 电路工作原理图

DAC0832是采用CMOS工艺制成的单片直流输出型8位数/模转换器。如图4-82所示,它由倒T型R-2R电阻网络、模拟开关、运算放大器和参考电压VREF四大部分组成。运算放大器输出的模拟量V0为:

123 图2-3 数模转换电路原理图 公式如下: 由上式可见,输出的模拟量 与输入的数字量( 正比,这就实现了从数字量到模拟量的转换。 R71470U20CSWR12181917765416151413310CSWR1WR2ILEXFERDI0DI1DI2DI3DI4DI5DI6DI7AGNDDGNDDAC0832LCN ) 成DS23VCCVDD20W51KR78JP31510D5C330.1uF+12V7-12VU261234567OUTPUT1OUTPUT4-INPUT1-INPUT4+INPUT1+INPUT4V+GND14131211109812OUTD0D1D2D3D4D5D6D7VREFRFBIOUT1IOUT2891112U2323LM741CN5861W6-12V10K+INPUT2+INPUT3-INPUT2-INPUT3OUTPUT2OUTPUT3LM324N4R794.7K-12VC320.1uF

本文来源:https://www.bwwdw.com/article/886h.html

Top