电磁控制运动装置要点.pdf

上传人:tbuqq 文档编号:5228807 上传时间:2020-02-27 格式:PDF 页数:24 大小:519.67KB
返回 下载 相关 举报
电磁控制运动装置要点.pdf_第1页
第1页 / 共24页
电磁控制运动装置要点.pdf_第2页
第2页 / 共24页
电磁控制运动装置要点.pdf_第3页
第3页 / 共24页
电磁控制运动装置要点.pdf_第4页
第4页 / 共24页
电磁控制运动装置要点.pdf_第5页
第5页 / 共24页
点击查看更多>>
资源描述

《电磁控制运动装置要点.pdf》由会员分享,可在线阅读,更多相关《电磁控制运动装置要点.pdf(24页珍藏版)》请在三一文库上搜索。

1、摘要 本系统以单片机 AT89S52为核心,调节直流电磁铁供电电压的大小,改变 电磁铁的磁场力的大小,利用电磁控制实现摆杆按指定的摆角和周期摆动。采用 SCA100T 角度传感器来实现摆杆摆角信号的采集,用 AT89S52 根据摆角值和周 期输出一定占空比的PWM 脉冲波,用L298N 作为驱动电路,以达到控制摆角 和周期的目的。本设计进行了硬件电路搭建和软件编程,给出了系统方案、硬件 电路图和软件流程图,并通过软件编程,实现了题目要求的技术指标,并用液晶 显示屏实时显示摆杆摆角、摆动周期、设定角度和设定周期。 关键词:摆角周期电磁控制AT89S52 1 目录 1方案设计与论证 . 2 1.1

2、 角度采集方案 . 2 1.2 驱动及控制方案 . 3 1.3 系统总体方案 . 3 2系统硬件电路设计 . 4 2.1 单片机 AT89S52 4 2.2 L298N 简介 5 2.3 角度测量原理 5 2.3.1 角度测量原理 . 5 2.3.2 角度测量算法 . 6 2.3.3 角度测量电路 . 7 2.4 直流电磁铁控制模块 7 2.4.1 控制算法 . 错误!未定义书签。 2.4.2 控制电路 . 7 2.5 按键显示 7 2.6 声光提示 . 8 3系统软件设计 . 9 3.1 主程序流程图 9 3.2 角度测量子程序流程图 . 9 3.3 角度控制子程序流程图 10 4系统测试

3、. 10 4.1 测试仪器与方法 . 10 4.2 角度测量 . 11 4.3 测试结果分析 . 11 5结论 . 11 参考文献 . 13 附录 1 硬件电路图 14 附录 2 主要元器件清单 15 附录 3 程序清单 16 2 1方案设计与论证 本题目是设计并制作一个摆杆控制系统,通过电磁控制装置, 调节摆杆摆角 的大小,如图 1.1 所示。 图 1.1 摆杆控制系统示意图 根据题目的要求,本系统所设计的核心问题主要有: 1、对直流电磁铁电压大小进行快速而准确的控制,以保证摆杆的摆角和周 期在控制范围内。 2、为保证系统的精度要求,必须要对摆杆摆动角度进行实时检测。 3、为保证摆杆在尽可能

4、短的时间内达到预定角度还需要相应按键及显示电 路。 我们分以下几个部分进行方案设计和比较论证。 1.1 转角采集方案 方案一:采用 MMA7455L 芯片。这是一种XYZ三轴微机电加速度计,可测量 X、Y、 Z 三个方向上在工作时的参数,输出为8 位或 10 位的数字量。可直接与单片机 连接。硬件电路简单,但成本较高,软件程序调试较困难。 方案二:采用 SCA100T-D02 。SCA100T-D02 测量范围为 -90+90,具有 模拟和数字两路输出。模拟量输出电压为05V,不需信号调理电路就可送入 3 A/D,拟采用模拟量输出,后接AD7705 。此方案硬件电路简单,软件调试简单, 测量数

5、据稳定。 经过比较,拟选择方案二。 1.2 驱动及控制方案 方案一:采用线性放大驱动方式。 采用 L298N作为驱动芯片。 单片机输出 数字量,经 D/A后转换为连续变化的电压值,控制电磁铁电磁力的大小, 来改变 摆角的大小,此方式波动小,线性好,对邻近电路干扰小。但存在效率低和散热 等问题。硬件需要D/A 转换器,电路复杂,成本高。 方案二:采用 PWM 调速。采用 L298N作为驱动芯片。 PWM 调速是使加在直流 电磁铁两端的电压为方波形式, 通过改变方波占空比实现对直流电磁铁电压大小 的调节。 PWM 由单片机输出。 L298N芯片内部开关为电子开关,速度很快,稳定 性也极强。此方案电

6、路简单,使用比较方便。 基于上述理论分析和实际情况,拟定选择方案二。 1.3 系统总体方案 图 1.2 摆杆控制系统总体方案框图 根据上述分析, 设计出系统总体方案, 由 SCA100T-D02 采集转角信息后送入 功率 驱动 L298N 直流电 磁铁 角度传 感器 SCA100T- D02 摆杆偏 角 AD7705 按键 显示 单片机 最小系 统 电源 4 AD7705转换,输出的 8 位数字量送入 AT89C52 中,单片机经分析处理后输出一 定占空比的 PWM,经 L298N功率驱动放大后控制直流电磁铁电压的大小。同时可 用按键设定摆杆转角并显示,摆杆控制系统总体方案框图如图1.2 所示

7、。 2系统硬件电路设计 硬件电路设计图见附录1。 2.1 单片机 AT89S52 本系统采用 AT89S52作为核心部件。 AT89S52 内部有 8KB的存储单元和 256 个 RAM 存储单元,用于本系统的角度采集控制足够使用。51 单片机的外围控制 电路如图 2.1 所示。 12 345678 91 0 1 1 1 2 1 3 1 4 1 5 1 6 1 7 1 8 1 9 2 0 J_CPU6 KD_IN D 4 D 3 W R A L E R S T R D D 0 D 1 D 2 D 3 D 4 D 5 D 6 D 7 I N T 0 A 1 5 P10 1 P11 2 P12 3

8、 P13 4 P14 5 P15 6 P16 7 P17 8 P00 39 P01 38 P02 37 P03 36 P04 35 P05 34 P06 33 P07 32 P20 21 P21 22 P22 23 P23 24 P24 25 P25 26 P26 27 P27 28 VCC 40 GND 20 RXD 10 TXD 11 ALE/P 30 PSEN 29 INT0 12 INT1 13 T0 14 T1 15 EA/VP 31 RESET 9 RD 16 WR 17 X2 18 X1 19 U_CPU1 AT89C51 D0 D1 D2 D3 D4 D5 D6 D7 ALE

9、TXD RXD P10 P11 P12 P13 P14 P15 P16 P17 INT0 INT1 T0 T1 X1 X2 RET RD WR A8 A9 A10 A11 A12 A13 A14 A15 +5V 1 2 3 4 5 6 7 8 9 10 J_CPU4 P1 I/O P10 P11 P12 P13 P14 P15 P16 P17 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 J_CPU3 AB A0 A1 A2 A3 A4 A5 A6 A7 A8 A9 A10 A11 A12 A13 A14 A15 D0 D1 D2 D3 D4 D5 D6 D7

10、ALE A0 A1 A2 A3 A4 A5 A6 A7 OC 1 C 11 1D 3 1Q 2 2D 4 2Q 5 3D 7 3Q 6 4D 8 4Q 9 5D 13 5Q 12 6D 14 6Q 15 7D 17 7Q 16 8D 18 8Q 19 VCC 20 GND 10 U? 74LS373+5V C1 20PF C2 20PF 1 2 3 J_CPU14 CRYSTAL Y1 6MHz Y2 12MHz Y6MHz Y 6 M H z Y12MHz Y 1 2 M H z +5V +5v 图 2.1 单片机最小系统 5 2.2 L298N 简介 L298N 是 SGS 公司的产品,比

11、较常见的是 15 脚 Multiwatt 封装的 L298N ,内部同样包含 4 通道逻辑驱动电路。 可以方便的驱动两个直流电机,或 一个两相步进电机。 L298N 芯片可以驱动两个二相电机, 也可以驱动一个四相电 机,输出电压最高可达 50V,可以直接通过电源来调节输出电压;可以直接用单 片机的 IO 口提供信号;而且电路简单,使用比较方便。 L298N 可接受标准 TTL 逻辑电平信号 VSS,VSS 可接 4 57 V 电压。 4 脚 VS 接电源电压, VS 电压范围 VIH 为2546 V。输出电流可达 2 A, 可驱动电感性负载。 1 脚和 15 脚下管的发射极分别单独引出以便接入

12、电流采样 电阻,形成电流传感信号。 L298 可驱动 2 个电动机,OUT1 , OUT2 和 OUT3 , OUT4 之间可分别接电动机。 2.3 角度测量 角度测量使用了 VTI 公司生产的硅基加速度传感器SCA100T-D02, 其主要性 能指标 :1) 双轴向倾角测量 :SCA100T 测量 X-Y 方向;2) 测量范围 1.7g;3) 测 量灵敏度 1.2V/g ; 4)+5V 单电源供电 , 两个比例电压输出 ( 模拟), 内置 11位AD 转 换器; 5) 兼容 SPI 的数字输出; 6)通过 SPI 接口, 可以访问内部温度传感器。 SCA100T 为 12脚表贴封装 , 设计

13、时要水平安装芯片 , 并注意芯片上面箭头所指方 向为正方向。 2.3.1 角度测量原理 角度测量采用倾角传感器 SCA100T-D02 的传感轴安装为与摆杆在同一平面 内,采用双轴测量值合成来计算倾斜角,在小倾角测量时, 具有高分辨率和高精 度的特点。该传感器的每个轴可以检测090度之间的倾角,所对应的输出电 压为05。 由于加速度传感器在静止放置时受到重力作用,因此会有 1g 的重力加速度。 利用这个性质, 通过测量重力加速度在加速度传感器的X 轴和Y 轴上的分量,可 以计算出其在垂直平面上的倾斜角度。如图2.2 所示,有 singAx,cosgAy,则AyAx/tan 即)arctan(

14、Ay Ax 6 图 2.2 角度测量原理图 这样,根据以上原理一个2 轴加速度传感器可以测量在X-Y 平面上的倾斜 角度。这个公式就是本文中用来测量物体倾斜角度的基本原理。需要说明的是, 这里利用的是物体在静止时受到重力的性质,如果物体同时也有运动加速度的 话,那么这个公式将不再准确。 所以必须为公式增加一个限制条件,即 gAyAx Ay Ax 1 )arctan( 22 (式 2-1) 2.3.2 角度测量算法 本设计角度测量算法采用反三角函数算法。 直接利用式 2-1 以上公式进行计算。具体步骤为: 1)测量 X、Y的加速度 Ax ,Ay。(对于数字输出的加速度传感器,直接通 过 I 2C

15、 或 SPI 总线读取;对于模拟输出的加速度传感器,需要通过 ADC 进行采 样。) 2)计算 22 AyAx,如果这个平方和接近1g 的平方,那么说明这组采样 值是有效的,可以用来算;否则将该采样值丢弃,重复第一步。 3)利用有效的采样值,通过开平方和反正切函数等数学计算,求出倾斜 角度)arcsin( ysensitivit offsetVout 。 7 4) 重复第一步。 在第三步公式中: offset是在 0输出的电压值 (电压 2.5V), Sensitivity 是芯片灵敏度( SCA100T-D02 是 2V)Vout 是芯片输出的模拟量。 2.3.3 角度测量电路 选用角度传感

16、器 SCA100T-D02 的模拟输出,输出范围05v, 故可直接接 8 位 AD7705进行模数转换,得出数字量送入单片机。SCA100T-D02 与 AD的连接如 图 2.3 所示: SCA100T-D02 +5V ST_1 ST_2 SCK MISO MOSI OUT_2 OUT1 IN0 CSB GND 图 2.3 SCA100T-D02与 AD连接 2.4 直流电磁铁控制模块 直流电磁铁控制采用高低电平控制,由单片机输出。选用手制的直流电磁 铁, 。驱动芯片选用 L298N 。 2.4.1 直流电磁铁控制电路 直流电磁铁为手制,单片机的输出为TTL信号,电流小,所以要加驱动电 路。选

17、用的驱动芯片为L298N 。直流电磁铁控制电路图如图2.4 所示。 2.5 按键显示 本系统设计采用了LCD显示,显示屏上可实时显示测量角度和设定角度。 按键共有 4 个,分别为启动键、停止键、角度设定键、周期设定键。 8 2.6 声光提示 本系统设计在帆板转角为1045范围内,当摆杆稳定运行20s 发出声、 光提示,并在 5s 内平稳停在静止点上示,以便进行测试。声光提示电路图如图 2.5 所示。 图 2.4 直流电磁铁控制电路图 AT89S52 P1.7 P1.6 +5V R1 R2 声光提示电路 图 2.5 声光提示电路图 9 3系统软件设计 3.1 主程序流程图 本系统软件设计采用C5

18、1 语言编程,以达到题目要求的控制精度和响应时 间。主要完成转角信号的采集、数字滤波、标度变换、显示并通过采集信号调节 电磁铁的通断时间来控制摆杆角度。其中,显示模块负责将角度传感器检测到的 角度送到 LCD 进行显示;角度控制模块负责根据按键的输入信息调节电磁铁通 断时间,控制摆杆偏转。 图 3.1 主程序流程图 由于本系统的主要任务是对角度实时监控,所以在程序中将对角度的测量 放在主程序中, 设为查询方式; 对按键的处理设为中断方式。系统软件主程序流 程图如图 3.1 所示,按键中断处理子程序如图3.2 所示。处理子程序1、2、3、 4、5 分别对应为 PWM 占空比加 1 子程序, PW

19、M 占空比减 1 子程序,设定值加1 子程序,设定值减1 子程序和转角 45自动追踪子程序。 3.2 角度测量子程序流程图 角度测量子程序流程图如图3.3 所示: 10 3.3 角度控制子程序流程图 单片机读入设定值X和测量值 Y后进行比较, 调节占空比改变直流电压调节 角度,控制摆杆偏转。 4系统测试 基于本次设计题目的要求,本系统采用SCA100T-D02 采集摆杆的转角并通过 LCD 显示,还可通过键盘预设转角值,其分辨率可达到2。 图 3.2 按键中断处理子程序 4.1 测试仪器与方法 测试仪器:量角器1 把、秒表 1 块、直尺 1 把。 测试方法: 1、测试基本要求( 1) 、 (2

20、)项时,用量角器量出摆杆偏角并与LCD上显示 的角度值进行比较,看角度传感器测得的角度是否准确。 2、测试基本要求( 3)项和发挥部分( 1) 、 (2)项时,用量角器量出摆杆实 际转角并与 LCD上显示的角度值和按键设定的角度值进行比较,并用秒表记录调 入口 扫描按键,取键码 键码分析 是命令键?判断是何种命令 存数字并显示处理子程序1 处理子程序2 处理子程序5 Y N 中断返回 11 节时间,评判其控制性能。 图 3.3 角度测量子程序流程图图 3.4 角度控制子程序流程图 4.2 角度测量 (1)用手转动摆杆其测量结果如表1 所示: 表 1 角度测量数据比较(单位:度) 4.3 测试结

21、果分析 通过测试结果可以看出,当摆杆角度从0 45范围变化时,当角度小于20时, 控制容易,误差小,控制时间短。当角度接近45时,控制时间也明显增加,误差也较大。 当控制角度在30 45时,控制时间也明显增加,误差也较大。 5结论 通过测试可知: 本系统能较好的完成摆杆控制系统的要求。具体完成工作如 下: 1、完成了基本要求的( 1) 、 (2) 、 (3) ,11.5cm 时测试范围最大达到45 度。 完成了发挥部分的( 1) 、 (2) 。 实际角度0 14 15 16 30 31 40 43 45 显示角度0 13 14 15 27 29 37 41 42 绝对误差0 -1 -1 -1

22、-3 -2 -3 -2 -3 12 2、采用 LCD实时显示角度,并能实时显示设定值。 3、设有自动追踪设定值功能,当设定某一角度时,摆杆可以自动变化,以 保证角度值的稳定。 4、系统在完成基本要求 (1) 时, 分辨力可达 1, 绝对误差小于 5,完成基 本要求 (3) 时,调节时间优于基本要求 13 参考文献 1 谷云高等 . 基于 MMA7455 的机器人姿态控制系统的研究J. 制造业自动化, 2010(8) :15-17, 46. 2 张新强 . 点阵 LCD 驱动显控原理与实践M . 北京 :北京航空航天大学出版 社,2010. 3 朱清 . 基于单片机控制的人机界面应用研究J. 工

23、业控制计算机, 2009, 22(12):5,7 4 孙汝建. 基于 SPI接口的双轴 SCAT100 倾角传感器及其应用方法 J. 仪器仪 表用户, 2006(4) ,69-71. 5 王盛军. 基于 SCA100T 和 MCU 数字倾角传感器的设计与实现J. 微计算机 信息 2010 (26):90-91 6 黄志伟等 . 全国大学生电子设计竞赛训练教程(修订版)M . 北京:电子工业 出版社 ,2010. 14 附录 1 硬件电路图 15 附录 2 主要元器件清单 表 1 元件清单 元器件名称型号个数 LCD 液 晶12864 1 单片机AT89S52 1 角度传感器SCA100T-D0

24、2 1 摆杆11.5cm1 驱 动器L298N 1 稳压电源YB1731A 1 开关电源5/12V 1 基准电源TL 431 1 A/D 模数转换器AD7705 1 电解电容100uf 2 瓷片电容0.33uf 1 瓷片电容0.1uf 6 瓷片电容47uf 1 传感器SCA100T-D02 1 瓷片电容20pf 1 石英晶体振荡器12MHZ 1 石英晶体振荡器6MHZ 1 与非门74LS04 1 电阻5.1K 4 电阻560 4 电阻4.7K 3 二极管IN5819 4 蜂鸣器 1 散热片 1 16 附录 3 程序清单 #include #include #define dateport P0

25、 sbit BF=P07; sbit RS=P10; sbit RW=P11; sbit E=P12; sbit PSB=P16; sbit in1=P20; sbit in2=P21; sbit enA=P22; sbit CS=P31; sbit SCLK=P27; sbit DOUT=P26; sbit DIN=P25; sbit start=P37; sbit T=P34; sbit A=P35; sbit AD7705_DRDY=P24; unsigned char code digit=“0123456789“; unsigned char code st=“ 电磁控制运动装置“;

26、 unsigned char code string=“ 实际设定 “; unsigned char code str=“ 角度 :“; unsigned char code str0=“ 周期 :“; unsigned char code stt=“xxx“; unsigned char MSB_Data,LSB_Data; unsigned int Data_read; unsigned int q=0; unsigned char jiaodu=5; unsigned char zhouqi=2; float data_a=0x0000; int t; void delayms(unsi

27、gned int a); void delayus (unsigned int a); void AD7705_Write_Reg(unsigned char aa); float AD7705_Read_Reg(); void int_system(); void ad7705_init(); void date_out(); void setjiao(void); 17 void setzhou(void); /?3 D void delayms(unsigned int a) unsigned int i,j; for (i=0;i250) if (h=10 else h=h; h=i;

28、 Write_Cmd(0x8b); Write_Data(digith/100); Write_Data(digith%100/10); Write_Data(digith%10); delayus(10); void display2(void)/ unsigned char i; Write_Cmd(0x92); delayus(50); for(i=0;i45) jiaodu=5; 23 while (T=0); void setzhou(void) while (A=0) Write_Cmd(0x9e); Write_Data(digitzhouqi/10); Write_Data(.); Write_Data(digitzhouqi%10); zhouqi=zhouqi+2; if(zhouqi45) zhouqi=5; while (A=0); void timer0() interrupt 1 q=q+1; if(q=20) enA=!enA; q=0; TH0=0x3c; TL0=0xb0;

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1