《C语言在测量和控制中的应用 教学课件 ppt 作者 王彤第7章 并口的使用与步进的电机控制》由会员分享,可在线阅读,更多相关《C语言在测量和控制中的应用 教学课件 ppt 作者 王彤第7章 并口的使用与步进的电机控制(29页珍藏版)》请在金锄头文库上搜索。
1、第7章 并口的使用与步进电机控制,哈尔滨工业大学航天学院,C语言在测量与控制中的应用系列课件,7.1并行I/O接口概述,数据所有位同时进行传输称为并行通讯,并行接口芯片具有以下功能:,1.两个或两个以上的具有锁存器或缓冲器的数据端口; 2.每个数据端口都具有与CPU用应答方式交换信号所必需的控制和状态信息,也有与外设交换信号所必需的控制和状态信息; 3.每个数据端口有能用中断方式与CPU交换信息所必需的电路; 4.具有片选和控制电路; 5.可用程序选择数据端口,选择端口的数据传递方向,选择与CPU交换信息的方法等。,7.2 8255A并行接口芯片简介,8255A是Intel系列的可编程接口芯片
2、,具有40条引脚,使用单一的+5V电源,双列直插式封装。 8255A有3个8位的输入输出端口,端口A端口B和端口C,可以用软件分别置成输入或输出端口。,早期PC机有一片8255A , 现在集成在多功能芯片中,功能和地址基本兼容。 A口 B口 C口 端口地址: 60H 61H 62H,8255A的管脚,7.3 HY-6160数字量输入/输出板,HY-6160是一种用于ISA总线的数字量输入/输出接口板。HY-6160接口板为用户提供了32个数字量输入通道,32个数字量输出通道,数字量输出通道上电清零。,数字量输入通道数: 32 数字量输入组数: 4(8 bit / 组) 数字量输出通道数: 32
3、 数字量输出组数: 4(8 bit / 组) 输入/输出电平: TTL电平兼容 输入电平: VIH = 2.0 V (最小值) VIL = 0.8 V (最大值) 输出电平: VOL = 0.4 V (最大值) VOH= 2.4 V (最小值) 输出高电平电流: IOH = - 400 A 最大值 输出低电平电流: IOL = 8mA 最大值,尺寸:10.7cm 12.8cm2.3cm 工作温度范围:0 +60C 存储温度范围:-25 +85C 湿度范围: 90% (不结露) 电源功率消耗:+5V , 320mA 典型值,HY-6160的I/O端口地址,基地址计算公式: 基地址=512(0x2
4、00)+所有有效位之和 (ON为1),基地址 设置开关,基地址=0x200+0x80=0x280,基地址+0 写D/O0组输出寄存器的 D/O00 D/O07 基地址+1 写D/O1组输出寄存器的 D/O10D/O17 基地址+2 写D/O2组输出寄存器的 D/O20 D/O27 基地址+3 写D/O3组输出寄存器的 D/O30 D/O37 基地址+4 读D/I0组输入缓冲器的 D/I00 D/I07 基地址+5 读D/I1组输入缓冲器的 D/I10 D/I17 基地址+6 读D/I2组输入缓冲器的 D/I20 D/I27 基地址+7 读D/I3组输入缓冲器的 D/I30 D/I37,若基地址
5、选择为0x280,则从D/O0组输出255,从D/O2组输出0xb8的程序如下: int base=0x280; outportb(base +0 , 255) ; outportb(base +2,0xbc) ;,7.4 打印机的接口,通常PC机有两个并口:并口1,并口2。打印机通常接口1。每个并口都包括数据口、状态口和控制口。 数据口 状态口 控制口 并口1 378H 379H 37AH 并口2 278H 279H 27AH,并口1在PC机后面板上是D型25针插座,在打印机上是D型36线插座。,信号线功能,控制口、状态口和数据口,控制口 即控制寄存器(8位),功能包括初始化打印机接口及设置
6、中断方式等。,状态口 即状态寄存器(8位),提供打印机工作状态,供 CPU读。,数据口 是一个8位单向输出端口,若不接打印机,可作为8位输出端口,控制数码显示管、发光二极管、步进电机驱动器等。,7.5 步进电动机及驱动器,步进电机,步进电机驱动器,步进电机的特点,步进电机是纯数字的控制电机,将脉冲信号转换成角位移。给一个脉冲信号,转过一定角度。在x-y工作台,磁盘驱动器,阀门控制,石英钟,打印机等许多方面应用。,步进电机的特点: 1.电机旋转角度与输入脉冲成比例,角度误差小,不产生积累误差。 2.利用输入脉冲频率高低可做转速调整。 3.可采用开环控制,成本低。 4.电机的启动、停止、加速、减速
7、、正反转反应快,容易控制 (动态反应快)。 5.可带负载低速运行,不必接减速器。 6.结构简单,可靠性高,使用寿命长。 7.低速时,可能产生震动和噪声。,振荡与失步,步进电机在低速和共振区可能产生振荡现象,细分角度可减轻振荡。,步进电机有一个启动频率 (1)启动时,若脉冲频率过高,电机来不及获得足够能量,转子跟不上旋转磁场速度,引起失步。 提高电机转矩,减小负载转动惯量,减小步距角都可提高电机启动频率。,(2)制动和突然换向时,转子获得过多能量,产生严重过冲, 引起失步。,磁盘结构,步进电机在磁盘驱动器上的应用,步进电机,磁盘驱动器上的步进电机图,23HS2001步进电机技术参数1,相数: 2
8、 步距角: 1.8 相电流: 1.7A 最大静转矩: 0.15Nm 相电阻: 1.4 相电感: 1.96mH 驱动电压: DC 24V 空载启动频率/转速 6.5KHz/390转/分,23HS2001步进电机技术参数2,重量 : 0.2Kg 环境温度 :-25+55C 绝缘电阻 :500V DC 100MMin 温升 :75 Max 绝缘强度 :B 配套驱动器 :SH-2H042Ma,SH-2H042Ma步进电机驱动器,类别 :混合式 相数 :2/4 细分倍数 :2、4、8 (b型 2,5,10,20,40) 输出相电流 :1.7A 电源电压 :一组DC 24V 配套电机 :17HS001,
9、17HS101, 17HS111,23HS2001,电机与驱动器的连接,细分开关设置,1 2 3 4 num angle 0 0 1 1 2 0.9 0 1 1 1 4 0.45 1 0 1 1 8 0.225 switch 3,4 kept 1,共阳极接法,CP+ 和 DIR+ 接在一起作为共阳端OPTO,接外部系统+5V。 脉冲信号接 CP-端,方向信号接 DIR-端。,脉冲宽度2S 负脉冲方式,CP=5V 高电平 CP=0V 低电平,共阴极接法,CP- 和 DIR- 接在一起作为共阴端,接外部系统GND。 脉冲信号接 CP+端,方向信号接 DIR+端。,脉冲宽度2S,正脉冲方式,CP=5
10、V 高电平 CP=0V 低电平,7.6 步进电动机的位置与速度控制,采用共阴极接法,正脉冲有效。 利用打印机数字口(地址0x378)控制步进电机驱动器, D0 控制方向,接 DIR+端 D1 控制步进,接CP+ 端 DIR- 和 CP- 接地 细分开关置成 2细分状态,步距角 0.9,程序举例,#include #include void plus( int m) outportb(0x378,0x00); delay(m); outportb(0x378,0x02); delay(1); main( ) long n; for(n=0;n160000;n+) plus(20); ,D1位交替
11、输出高、低电平, 形成步进脉冲。,D0位是0时是某个转向, D0位是1时是另一个转向。,关于延时函数delay( )的一些说明,void delay (unsigend milliseconds ) 该函数由头文件dos.h 说明。该函数可起到延时一段时间的作用,延时时间的长短由参数milliseconds确定。该函数的说明中说milliseconds的单位是毫秒,但对目前使用的PC系列微机来说,实际的延时时间要比说明中规定的短,而且与CPU的主频有关。所以在使用这个函数时,要测试一下在所使用计算机软、硬件条件下,函数 delay( )的参数milliseconds实际的延时单位。,实验要求,
12、1.步进电机向某一方向转4周,然后再向另一方向转2周。注意观察是否回到原来的起始位置(旋转结束后旋钮的指向是否停在原来位置)。 2.提高步进电机转速,旋转5周。注意观察是否出现失步现象估计步进电机的带载启动频率。 *3编写“升速-恒速-减速”控制程序。起始频率应低于步进电机的带载启动频,恒速运行时的频率应高于步进电机的带载启动频。整个运行过程应是整圈数,注意观察是否有振荡和丢步现象。,利用打印机数字口(地址0x378)控制步进电机驱动器, D0 控制方向 D1 控制步进 细分开关置成 2细分状态,步距角 0.9,思考题与习题,1.若用打印机数字口D7位控制方向,D0位控制步进,写出控制程序。,2.用定时中断的方法定时产生脉冲,写出出程序。,3.编写“升速恒速减速停止”运动程序,恒速运行时电机的转速要超过电机的启动频率。,4. 怎样测试函数 delay( )的参数milliseconds实际的延时时间?,