多功能电机驱动系统的设计研究大学生课外学术科技作品_第1页
多功能电机驱动系统的设计研究大学生课外学术科技作品_第2页
多功能电机驱动系统的设计研究大学生课外学术科技作品_第3页
多功能电机驱动系统的设计研究大学生课外学术科技作品_第4页
多功能电机驱动系统的设计研究大学生课外学术科技作品_第5页
已阅读5页,还剩37页未读 继续免费阅读

下载本文档

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

文档简介

1、第十一届“挑战杯”辽宁省大学生课外学术科技作品竞赛 多功能电机驱动系统的设计研究 摘 要 电机本体及其控制技术在近几年取得相当大的进步。这要归功 于半导体技术的空前发展带来的电力电子学领域的显著进步。电机 驱动产业发展的利处已经触及各种各样的设备,从大型工业设备像 钢铁制造厂、造纸厂的轧钢机等,到机床和半导体制造机中使用的 机电一体化设备。 现有的一般驱动方法功耗高,有逻辑缺陷,软硬件不协调,控制 精度不高,缺少安全监控环节。项目针对以上问题重点设计一种以 单片机为主要控制器件,以 igbt 为主要功率开关器件。从硬件和 软件两方面介绍了单片机多功能电机控制系统的设计思路。阐述了 系统的工作原

2、理、设计及实现。由单片机实现双机通信,测速发电 机测速,直流供电,lcd 显示,实现了对多种电机的控制驱动。可 以实现对电机的 pid 调速,并且具有欠电压过电压过电流保护。 关键词:关键词:双机通信、控制驱动、电机 pid 调速、保护 第十一届“挑战杯”辽宁省大学生课外学术科技作品竞赛 abstract the motor and its control technology has made considerable progress in recent years.significant progress in the field of power electronics has bro

3、ught unprecedented development thanks to the semiconductor technology.motor drive industry profits have hit various,from large industrial equipment like iron and steel factory, paper mill rolling machines, electromechanical integration equipment used to machine tools and semiconductor manufacturing

4、machine. the general method of driving power of existing high, there are flaws in logic, hardware and software are not coordinated, the control accuracy is not high, the lack of safety monitoring link. the project in view of the above problems focus on the design of a single-chip microcomputer as th

5、e main control device, with igbt as the main power switch device. design of multi-function mcu motor control system is introduced from two aspects of hardware and software. describes the design and implementation of the working principle, system. realization of communication, composed of single-chip

6、 encoder, dc power supply, lcd display, to achieve the control of various motor drive. pid can realize speed regulation of motor, and has the undervoltage overvoltage and overcurrent protection. keywords: communication, drive control, pid motor speed control, protection 第十一届“挑战杯”辽宁省大学生课外学术科技作品竞赛 目目

7、录录 1 前言.1 2 系统的设计及指标.2 2.1 系统设计方案及论证.2 2.1.1 系统设计方案.2 2.1.2 控制器模块设计方案.3 2.1.3 电机驱动模块设计方案.3 2.1.4 速度采集模块设计方案.4 2.1.5 键盘模块设计方案.4 2.2 系统技术指标.5 3 硬件电路设计.6 3.1 单片机模块.6 3.1.1 stc12c5a60s2 单片机的基本特性 .6 3.1.2 双单片机工作模式 .10 3.1.3 并行通信与串行通信 .10 3.2 电机驱动电路 .11 3.2.1 m57957l 的结构 .12 3.2.2 m57957l 的工作原理 .13 第十一届“挑

8、战杯”辽宁省大学生课外学术科技作品竞赛 3.3 显示电路设计.13 3.4 键盘电路设计.14 4 软件设计.15 4.1 程序流程.15 4.1.1 主流程图.15 4.1.2 显示程序流程 .17 4.1.3 键盘程序程序流程 .17 4.2 算法实现 .19 4.2.1 电机速度算法.19 4.2.2 pid 算法 .19 小结.20 参考文献.21 附录 部分源程序.22 第十一届“挑战杯”辽宁省大学生课外学术科技作品竞赛 1 1 前言 一个多世纪以来,电动机作为机电能量转换装置,其应用范 围已遍及国民经济的各个领域以及人们的日常生活中。尤其是近些 年来,随着现代电力电子技术,控制技术

9、和计算机技术的发展,电 机的应用技术也得到了进一步的发展。在实际应用中,电机已由过 去简单的起停控制,提供动力为目的的应用上升到了对其速度、位 置、转矩等物理量的精确控制,将预定的控制方案,规划指令转变 成期望的机械运动。这种新型控制技术已经不是传统的“电机控制” , “电力控制”而是“运动控制” ,运动控制使被控电机的机械运动 实现精确的位置控制,速度控制,加速度控制等当前,单片机技术 取得的进步比以往任何时候都更加有效的控制电机,而成本更低。 单片机已渗透到我们生活的各个领域,几乎很难找到没有单片机的 领域,计算机的网络通讯与数据传输,工业自动化过程的实时控制 和数据处理等等都离不开单片机

10、,更不用说全自动控制领域。 虽然单片机在各个方面都发挥着不可替代的作用,但由于动 力需求的不同,研制出不同种类的电机,同时驱动各类电机的电路 也不断增多,这使得系统的升级,改造的困难大大提高。因此开发 出可以多功能驱动电机的系统很适合当前的发展趋势。单片机本身 就是一个微型计算机,所以只要在其外部适当的增加一些必要的外 围扩展电路就可以灵活的构成各种应用系统,来对各种电机进行速 度等方面的自动控制,并且易于操作和监控。 本设计的主要目的是通过对电机驱动系统的研究,对电机实 现灵活调速。单片机控制直流电机,以 stc 的 12 系列单片机为核 心,并且采用双单机工作模式,并口通讯方式,具有较高的

11、抗干扰 能力。改进后具有低功耗,高精确度,增强了工作效率并且可以实 时监控等功能。 第十一届“挑战杯”辽宁省大学生课外学术科技作品竞赛 2 2 系统的设计及指标 2.1 系统设计方案及论证 2.1.1 系统设计方案 图中控制器模块单片机为系统的核心部件,键盘和显示器用来 实现人机交互功能,其中通过键盘将需要设置的参数和状态输入到 单片机中,并且通过控制器显示到显示器上。系统上电开机后, adc 通过采样电路采集获取电源电压,控制电压。正常无报警,过 电压欠电压报警。在运行过程中控制器产生 pwm 脉冲送到电机驱动 电路中,经过放大后控制电机转速,同时利用速度检测模块将当前 转速反馈到控制器中,

12、控制器经过数字 pid 运算后改变 pwm 脉冲的 占空比,实现电机转速的 pid 控制,同时实时监测电流状况,过电 流报警并跳车。 显示模块显示模块 控制模块控制模块键盘模块键盘模块电机驱动模块电机驱动模块直流电机直流电机 电源电压采样模块电源电压采样模块 adcadc 速度检测模块速度检测模块 图 1 系统的结构图 第十一届“挑战杯”辽宁省大学生课外学术科技作品竞赛 3 2.1.2 控制器模块设计方案 根据设计任务,控制器主要用于产生占空比受数字 pid 算法控 制的 pwm 脉冲,并对电机当前速度进行采集处理,根据算法得出当 前所需输出的占空比脉冲,并且完成实时监测电流。对于控制器的 选

13、择有以下两种方案。 方案一:选用 89c52 系列单片机作为系统的控制器。89c52 系列单 片机单片机算术运算功能强,软件编程灵活、自由度大,可用软件 编程实现各种算法和逻辑控制。并且它具有功耗低、体积小、技术 成熟和成本低等优点,在各个领域中应用广泛。 方案二:选用 stc 的 12c 系列单片机,并且采用双单片机工作模式, 通讯方式为并口,具有较高的抗干扰能力,其机器周期是原来的 1/12,速度更快,并且兼具方案一功耗低、体积小等优点。所以基 于上述理论分析和实际情况,电机驱动模块选用方案二。 2.1.3 电机驱动模块设计方案 本次设计的主要目的是通过对电机驱动系统的研究,对电机实 现灵

14、活调速。因此电机驱动模块器件的选取是本此设计的重要部分, 其方案有以下两种。 方案一:采用电力 mosfet 管组合电路构成驱动电路,这种方 法结构简单,成本低、易实现,但由于在驱动电路中采用了大量的 晶体管相互连接,使得电路复杂、抗干扰能力差、可靠性下降,我 们知道在实际的生产实践过程中可靠性是一个非常重要的方面。因 此此中方案不宜采用。 方案二:采用专用的电机驱动芯片,m57957l 电机驱动芯片, 由于它内部已经考虑到了电路的抗干扰能力,安全、可靠行,所以 我们在应用时只需考虑到芯片的硬件连接、驱动能力等问题就可以 了,而且 m57957l 是以 igbt 为核心元件,它集中了 mosf

15、et 和 gtr 第十一届“挑战杯”辽宁省大学生课外学术科技作品竞赛 4 的优点;所以此种方案的电路设计简单、抗干扰能力强、可靠性好。 基于上述理论分析和实际情况,电机驱动模块选用方案二。 2.1.4 速度采集模块设计方案 本系统是一闭环控制系统,在调节过程中需要将设定与当前实 际转速进行比较,速度采集模块就是为完成这样功能而设计的,其 设计方案以下两种: 方案一:采用对射式光电传感器。其检测方式为:发射器和接 受器相互对射安装,发射器的光直接对准接受器,当测物挡住光束 时,传感器输出产生变化以指示被测物被检测到。通过脉冲计数, 对速度进行测量。 方案二:采用测速发电机对直流电机转速进行测量。

16、该方案的 实现原理是将测速发电机固定在电动机的轴上,当电机转动时,带 动测速电机的轴一起转动,因此测速发电机会产生大小随直流电机 转速大小变化的感应电动势,因此精度比较高,虽然该方案的安装 比较复杂,但考虑到其精度的要求在设计中选用第二种方案进行设 计。 2.1.5 键盘模块设计方案 在电机驱动控制系统中,系统需要按键进行参数的输入、工作 方式的设定以及电机起停的控制,因此键盘在整个系统中是不可缺 少的一部分,考虑有二种方案: 方案一:采用独立式键盘,这种键盘硬件连接和软件实现简单, 并且各按键相互独立,每个按键均有一端接地,另一端接到输入线 上。按键的工作状态不会影响其它按键上的输入状态。但

17、是由于独 立式键盘每个按键需要占用一根输入口线,所以在按键数量较多时, 第十一届“挑战杯”辽宁省大学生课外学术科技作品竞赛 5 i/o 口浪费大,故此键盘只适用于按键较少或操作速度较高的场合。 方案二:采用行列式键盘,这种键盘的特点是行线、列线分别 接输入线、输出线。按键设置在行、列线的交叉点上,利用这种矩 阵结构只需 m 根行线和 n 根列线就可组成个按键的键盘,因此nm 矩阵式键盘适用于按键数量较多的场合。但此种键盘的软件结构较 为复杂。 根据上面两种方案的论述,由于本次设计的系统硬件连接比较 复杂,对软件的运行速度相对要求不高,所以采用方案二矩阵式键 盘进行设计。 经过上述的分析与论证,

18、系统各模块采用的方案如下: (1) 控制模块:采用 stc 的 12c 系列单片机,并且采用双单片 机工作模式,通讯方式为并口; (2)电机驱动模块:采用 m57957l 电机驱动芯片实现; (3)速度采集模块:采用测速发电机对直流电机转速进行测量; (4)键盘模块: 采用标准的 44 矩阵式键盘; 2.2 系统技术指标 系统主要完成以下功能: 软件部分: 1.用 c 语言完成转速测量,调控的软件系统; 2.要求把转速显示在 12864lcd 液晶显示器上,精度为 0.1%; 3.能向上位机发送数据; 4.将采样电路取得电源电压经模数转换器处理后输入单片机 控制系统,完成欠电压过电压过电流保护

19、。 硬件部分: 第十一届“挑战杯”辽宁省大学生课外学术科技作品竞赛 6 1.设计并制作单片机的转速测量,调控的硬件系统; 2.驱动电路在驱动功率高,开关速度快,热稳定性好的前提 下将电子电路控制信号放大并且精度高。 3.整体电路功耗低, 避免逻辑上的缺陷, 软硬件协调工作; 3 硬件电路设计 硬件的功能由总体设计所规定,硬件设计的任务是根据总体 设计要求,在选择的机型的基础上,具体确定系统中所要使用的元 器件,设计出系统的电路原理图,必要时做一些部件实验或应用仿 真软件仿真操作,以确定电路图的正确性。 设计单片机模块,考虑到单片机本身的外围电路较多,所以在单片 机模块方面需要极为小心。 3.1

20、 单片机模块 根据系统功能要求以及单片机硬件电路设计思路对单片机模块 进行设计,要使单片机准确的测量电机转速,并且使测出的数据能 显示出来,所以整个单片机部分分为测速发电机、时钟电路、复位 电路、执行元件以及显示电路五个部分。 3.1.1 stc12c5a60s2 单片机的基本特性 单片机我们采用 stc12c5a60s2 (其引脚图如图 2),相较于 89c52 系列单片机它本身带有一定的优点。stc12c5a60s2 是单时钟 /机器周期(1t)、高速/低功耗/超强抗干扰的新一代 8051 单片机, 指令代码完全兼容传统 8051,但速度快 8-12 倍。内部集成 max810 专用复位电

21、路,2 路 pwm,8 路高速 10 位 a/d 转换(250k/s),针对电机 控制,强干扰场合。 第十一届“挑战杯”辽宁省大学生课外学术科技作品竞赛 7 图 2 stc12c5a60s2 单片机引脚图 主要特性: 增强型 8051 cpu,1t,单时钟/机器周期,指令代码完全兼容 传统 8051; 工作电压:stc12c5a60s2 系列工作电压:5.5v-3.3v(5v 单片 机) 工作频率范围:0 - 35mhz,相当于普通 8051 的 0420mhz; 片上集成 1280 字节 ram; 外部掉电检测电路:在 p4.6 口有一个低压门槛比较器,5v 单 片机为 1.32v,误差为+

22、/-5%,3.3v 单片机为 1.30v,误差为+/-3%; 时钟源:外部高精度晶体/时钟,内部 r/c 振荡器(温漂为+/-5%到 +/-10%以内) 共 4 个 16 位定时器 两个与传统 8051 兼容的定时器/计数器 a/d 转换, 10 位精度 adc,共 8 路,转换速度可达 250k/s(每 秒钟 25 万次)18.通用全双工异步串行口(uart),由于 stc12 系列 第十一届“挑战杯”辽宁省大学生课外学术科技作品竞赛 8 是高速的 8051,可再用定时器或 pca 软件实现多串口; 工作温度范围:-40 - +85(工业级) 0 - 75(商业级) 各引脚功能简单介绍如下:

23、 p0 口:p0 口为一个 8 位漏级开路双向 i/o 口,每个管脚可吸 收 8ttl 门电流。当 p1 口的管脚写“1”时,被定义为高阻输入。 p0 能够用于外部程序数据存储器,它可以被定义为数据/地址的第 八位。在 flash 编程时,p0 口作为原码输入口,当 flash 进行校验 时,p0 输出原码,此时 p0 外部电位必须被拉高; p1 口:p1 口是一个内部提供上拉电阻的 8 位双向 i/o 口,p1 口缓冲器能接收输出 4ttl 门电流。p1 口管脚写入“1”后,电位被 内部上拉为高,可用作输入,p1 口被外部下拉为低电平时,将输出 电流,这是由于内部上拉的缘故。在 flash

24、编程和校验时,p1 口作 为第八位地址接收; p2 口:p2 口为一个内部上拉电阻的 8 位双向 i/o 口,p2 口缓 冲器可接收,输出 4 个 ttl 门电流,当 p2 口被写“1”时,其管脚 电位被内部上拉电阻拉高,且作为输入。作为输入时,p2 口的管脚 电位被外部拉低,将输出电流,这是由于内部上拉的缘故。p2 口当 用于外部程序存储器或 16 位地址外部数据存储器进行存取时,p2 口输出地址的高八位。在给出地址“1”时,它利用内部上拉的优 势,当对外部八位地址数据存储器进行读写时,p2 口输出其特殊功 能寄存器的内容。p2 口在 flash 编程和校验时接收高八位地址信号 和控制信号;

25、 p3 口:p3 口管脚是 8 个带内部上拉电阻的双向 i/o 口,可接 收输出 4 个 ttl 门电流。当 p3 口写入“1”后,它们被内部上拉为 高电平,并用作输入。作为输入时,由于外部下拉为低电平,p3 口 将输出电流(ill),也是由于上拉的缘故。p3 口也可作为 at89c51 的一些特殊功能口: 第十一届“挑战杯”辽宁省大学生课外学术科技作品竞赛 9 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 (

26、外部数据存储器写选通) p3.7 rd (外部数据存储器读选通) 同时 p3 口同时为闪烁编程和编程校验接收一些控制信号; rst:复位输入。当振荡器复位器件时,要保持 rst 脚两个机 器周期的高平时间; ale / prog :当访问外部存储器时,地址锁存允许的输出电 平用于锁存地址的低位字节。在 flash 编程期间,此引脚用于输入 编程脉冲。在平时,ale 端以不变的频率周期输出正脉冲信号,此 频率为振荡器频率的 1/6。因此它可用作对外部输出的脉冲或用于 定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过 一个 ale 脉冲。如想禁止 ale 的输出可在 sfr8eh 地址上

27、置 0。此时, ale 只有在执行 movx,movc 指令时 ale 才起作用。另外,该引脚 被略微拉高。如果微处理器在外部执行状态 ale 禁止,置位无效; psen:外部程序存储器的选通信号。在由外部程序存储器取址 期间,每个机器周期 psen 两次有效。但在访问内部部数据存储器 时,这两次有效的 psen 信号将不出现; ea/vpp:当 ea 保持低电平时,访问外部 rom;注意加密方式 1 时,ea 将内部锁定为 reset;当 ea 端保持高电平时,访问内部 rom。在 flash 编程期间,此引脚也用于施加 12v 编程电源(vpp); xtal1:反向振荡放大器的输入及内部时

28、钟工作电路的输入; xtal2:来自反向振荡器的输出; vcc:供电电压; 第十一届“挑战杯”辽宁省大学生课外学术科技作品竞赛 10 gnd:接地; 3.1.2 双单片机工作模式 当检测与控制系统处理大量数据和多路信息时,只用一片单片 机往往无法满足系统实时性和扩展性要求,且处理时间较长,单片 机要在相等的时间间隔进行 a/d 转换以及数据处理。由于要实现电 机的 pid 调速同时还要进行过电压欠电压保护以及电流实时监测, 因此这里提出一种基于双单片机的信号处理系统设计方案,该系统 采用单片机 stc12c5a60s2 作为核心器件,2 片单片机作为双核心分 担整个控制、检测单元的任务。 xt

29、al2 18 xtal1 19 ale 30 ea 31 psen 29 rst 9 p0.0/ad0 39 p0.1/ad1 38 p0.2/ad2 37 p0.3/ad3 36 p0.4/ad4 35 p0.5/ad5 34 p0.6/ad6 33 p0.7/ad7 32 p1.0 1 p1.1 2 p1.2 3 p1.3 4 p1.4 5 p1.5 6 p1.6 7 p1.7 8 p3.0/rxd 10 p3.1/txd 11 p3.2/int0 12 p3.3/int1 13 p3.4/t0 14 p3.7/rd 17 p3.6/wr 16 p3.5/t1 15 p2.7/a15 28

30、 p2.0/a8 21 p2.1/a9 22 p2.2/a10 23 p2.3/a11 24 p2.4/a12 25 p2.5/a13 26 p2.6/a14 27 u1 at89c51 x1 crystal c1 22ff c2 22pf r9 1k c3 20u +5v +5v xtal2 18 xtal1 19 ale 30 ea 31 psen 29 rst 9 p0.0/ad0 39 p0.1/ad1 38 p0.2/ad2 37 p0.3/ad3 36 p0.4/ad4 35 p0.5/ad5 34 p0.6/ad6 33 p0.7/ad7 32 p1.0 1 p1.1 2 p1.

31、2 3 p1.3 4 p1.4 5 p1.5 6 p1.6 7 p1.7 8 p3.0/rxd 10 p3.1/txd 11 p3.2/int0 12 p3.3/int1 13 p3.4/t0 14 p3.7/rd 17 p3.6/wr 16 p3.5/t1 15 p2.7/a15 28 p2.0/a8 21 p2.1/a9 22 p2.2/a10 23 p2.3/a11 24 p2.4/a12 25 p2.5/a13 26 p2.6/a14 27 u2 at89c51 x2 crystal c4 22ff c5 22pf r1 1k c6 20u +5v +5v buz1 buzzer 图

32、3 双单片机工作模式 3.1.3 并行通信与串行通信 并行通信: :所传送数据的各个位同时发送或接收。 相同时钟速率下,并行通信速度较快,适合高速本地通信。 串行通信: :所传送的数据的各个位按顺序一位一位的发送或接 第十一届“挑战杯”辽宁省大学生课外学术科技作品竞赛 11 收。串行通信连线少、连接可靠,适合远距离通信。 图 4 并行通信与串行通信示意图 在本设计中采用双单片机模式,通信方式为并行通信,这样 可以提高控制系统的工作效率以及精确度。其中,甲机用于监控电 源电压是否出现欠电压过电压过电流。乙机用于实现对电机的 pid 控制,即控制器产生 pwm 脉冲送到电机驱动电路中,经过放大后控

33、 制电机转速,同时利用速度检测模块将当前转速反馈到控制器中, 控制器经过数字 pid 运算后改变 pwm 脉冲的占空比,实现电机转速 实时控制的目的。同时乙机控制 12864lcd 液晶显示器,显示出 当前转速。 3.2 电机驱动电路 驱动模块是控制器与执行器之间的桥梁,在本系统中单片机的 i/o 口不能直接驱动电机,只有引入电机驱动模块才能保证电机按 照控制要求运行,在这里选用 m57957l 电机驱动芯片驱动电机, m57957l 内部集成有可在输入与输出之间实现良好电气隔离的光电 隔离器,所以可对被驱动的 igbt 模块实现可靠的驱动。m57957l 可 用来直接驱动 vces=600v

34、 系列的电流容量在 200a 以内的 igbt 模块 及 vces=1200v 系列的电流容量在 100a 以内的 igbt 模块;而 m57958l 可用来直接驱采用双电源驱动技术,输入信号与 ttl 电平 兼容,且采用单列直插式厚膜集成电路封装。 第十一届“挑战杯”辽宁省大学生课外学术科技作品竞赛 12 3.2.1 m57957l 的结构 m57957l 采用单列直插式标准 8 脚厚膜集成电路封装。其外形和 引脚排列如图 5 所示,各引脚的名称、功能及用法可参见表 1 所列。 图 5 m57957l 的引脚排列示图 表 1 m57957l 引脚说明 引脚引脚 号号 符号符号名称或功能名称或

35、功能用法用法 1 1 vinvin 驱动脉冲输入负驱动脉冲输入负 端端 使用中通过一反相器接用户脉冲形成电路的输出使用中通过一反相器接用户脉冲形成电路的输出 2 2 vinvin 驱动脉冲输入正驱动脉冲输入正 端端 使用中通过一电阻接用户脉冲形成部分电源使用中通过一电阻接用户脉冲形成部分电源 5 5gndgnd 驱动脉冲输出地驱动脉冲输出地 端端 接驱动脉冲输出级电源地端,该端电位应与用户脉冲形成接驱动脉冲输出级电源地端,该端电位应与用户脉冲形成 部分完全隔离部分完全隔离 6 6vccvcc 驱动功放级正电驱动功放级正电 源端源端 接用户提供的驱动脉冲功放级正电源端接用户提供的驱动脉冲功放级正

36、电源端 7 7voutvout 驱动脉冲输出端驱动脉冲输出端直接接被驱动直接接被驱动 igbtigbt 栅极栅极 8 8veevee 驱动功放级负电驱动功放级负电 源端源端 接用户提供的驱动脉冲功放级负电源端接用户提供的驱动脉冲功放级负电源端 第十一届“挑战杯”辽宁省大学生课外学术科技作品竞赛 13 3.2.2 m57957l 的工作原理 m57957l 内部结构如图 6 所示,来自脉冲形成单元的驱动信号为 高电平时光耦导通,接口电路把该信号整形后由功放级的两级达林 顿 npn 晶体管放大后输出,驱动功率 igbt 模块导通。在驱动信号 为低电平时光耦截止,此时接口电路输出亦为低电平,功放输出

37、级 pnp 晶体管导通,给被驱动的功率 igbt 栅、射极间施加以反向电压, 使被驱动功率 igbt 模块恢复关断状态。 图 6 m57957l 内部结构 3.3 显示电路设计 根据设计要求要对系统各项参数和电机运行状态进行显示,因 此在电路中加入显示模块是非常必要的。在系统运行过程中需要显 示的数据比较多,而且需要汉字显示,在这里选用 12864 液晶显 示器比较适合,它是一种图形点阵液晶显示器,主要由行驱动器/列 驱动器及 12864 全点阵液晶显示器组成,可完成汉字(1616) 显示和 图形显示共有 20 个引脚,其引脚名称及引脚编号的对应关系如图 7,引脚功能如表 2 所示。 第十一届

38、“挑战杯”辽宁省大学生课外学术科技作品竞赛 14 vss vdd vo rs r/w e db0 db1 db2 db3 db4 db5 db6 db7 cs1 cs2 /rst vee a k 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 图 7 12864lcd 引脚分布 表 2 12864 液晶显示模块引脚功能 引脚引脚符符 号号引引 脚脚 功功 能能引脚引脚符符 号号引引 脚脚 功功 能能 1 1vssvss 电源地电源地 1515cs1cs1cs1=1cs1=1 芯片选择左边芯片选择左边 64*6464*64 点点 2 2vdd

39、vdd 电源正电源正+5v+5v 1616cs2cs2cs2=1cs2=1 芯片选择右边芯片选择右边 64*6464*64 点点 3 3vovo 液晶显示驱动电源液晶显示驱动电源 1717/rst/rst 复位(低电平有效)复位(低电平有效) 4 4rsrs h h:数据输入;:数据输入; l l:指令码输入:指令码输入 1818veevee lcdlcd 驱动负电源驱动负电源 5 5r/wr/w h h:数据读取;:数据读取; l l:数据写入:数据写入 1919a a 背光电源(背光电源(+ +) 6 6e e使能信号。使能信号。2020k k 背光电源(背光电源(- -) 7-147-1

40、4db0-db7db0-db7 数据线数据线有些型号的模块有些型号的模块 1919、2020 脚为空脚脚为空脚 3.4 键盘电路设计 根据设计需求,本系统中使用了 44 键盘用以实现对 p、i、d 三个参数和电机正反转的设定,以及对电机启动、停止、 暂停、继续的控制,其电路原理图如图 8 所示。图中 l0l3 为 44 键盘的列信号,h0h3 为 44 键盘的行信号。在本系统中, 第十一届“挑战杯”辽宁省大学生课外学术科技作品竞赛 15 0123 4567 89 停停停停停 停停停停停停停停 h0 h1 h2 h3 l0 l1 l2 l3 用 p1.0p1.3 连接键盘的列信号 l0l3;用

41、p0.4p0.7 连接键盘 的行信号 h0h3。按照要求设计操作面板如图 8 所示: 图 8 键盘模块 键盘操作说明:在系统开始运行时,12864lcd 将显示开机界 面,若设置键显示屏进入参数设置界面,此时按 1、2、3、4 进入 相应参数的设置的状态,输入相应的数字即可完成该参数的设置, 待所有量设置完成后按正/反控制键设置正反转,最后按启动键启 动系统,在运行过程中可按下相应键对电机进行暂停、继续、停止 运行的控制。 4 软件设计 4.1 程序流程 4.1.1 主流程图 第十一届“挑战杯”辽宁省大学生课外学术科技作品竞赛 16 开始 初始化 调用清屏子程序 开始界面显示 设置键 按下?

42、调用清屏子程序 设置界面显示 根据设置 计算参数 启动键 按下? 调用清屏子程序 电机运行 状态显示 pwm脉冲输出 y n y n 在一个完整的系统中,只有硬件部分是不能完成相应设计任务 的,所以在该系统中软件部分是非常重要的,按照要求和系统运行 过程设计出主程序流程如图 9 所示。 图 9 主流程图 第十一届“挑战杯”辽宁省大学生课外学术科技作品竞赛 17 4.1.2 显示程序流程 显示模块是实现人机对话的重要部分,在这里选用 12864lcd 显示器可实现对汉字和字符的显示,该显示器的引脚功能在上面已 经做了说明,下面介绍 12864lcd 的相关指令。显示子程序流程 如图 10 所示

43、图 10 显示程序流程 4.1.3 键盘程序程序流程 键盘中断程序是用来设在系统相应参数和控制系统进入相应的 运行状态,其程序流程图如图 11 所示。 初始化 循环次数 j2 ? 写入数据字 节数i16? 设置显示起始 页、起始列 调用写入数 据子程序 j=j+1;i=0 i=i+1 reti y n n y 初始化 循环次数 j2 ? 写入数据字 节数i8? 设置显示起始 页、起始列 调用写入数 据子程序 j=j+1;i=0 i=i+1 reti y n n y a) 写入16*16汉字程序流程b)写入8*16数字 第十一届“挑战杯”辽宁省大学生课外学术科技作品竞赛 18 延时去抖动 p1口

44、低四位置1 读p1口低四位 数据到keyl keyl、keyh 相与为key p1口高四位置1 读p1口高四位 数据到keyh key=0xee ? key=0xeb ? key=0xed ? key=0xe7 ? key=0xde ? key=0xdd ? key=0xdb ? key=0xd7 ? key=0xbd ? key=0xbe ? key=0xbb ? key=0xb7 ? key=0x7e ? key=0x7d ? key=0x7b ? key=0x77 ? 数字键0 数字键1 数字键2 数字键3 数字键4 数字键5 数字键6 数字键7 数字键8 数字键9 正/反功能键 暂停功

45、能键 继续功能键 启动功能键 停止功能键 设置功能键 reti y n n n n n n n n n n n n n n n n y y y y y y y y y y y y y y y 第十一届“挑战杯”辽宁省大学生课外学术科技作品竞赛 19 0 )2() 1(2 )()()1()( unene nekneknenek dip 图 11 键盘程序程序流程 4.2 算法实现 4.2.1 电机速度算法 测速发电机输出电动势与转速成比例的微特电机。测速发电机 的绕组和磁路经精确设计,其输出电动势 e 和转速 n 成线性关系, 即 e=kn,k 是常数。改变旋转方向时输出电动势的极性即相应改变。

46、 在被测机构与测速发电机同轴联接时,只要检测出输出电动势,就 能获得被测机构的转速。 4.2.2 pid 算法 本系统设计的核心算法为 pid 算法,它根 据本次采样的数据与设定值进行比较得出偏差 ,对偏差进行 p、i、d 运算最终利用运算)(ne 结果控制 pwm 脉冲的占空比来实现对加在电机 两端电压的调节10,进而控制电机转速。其运 算公式为: )(nu 因此要想实现 pid 控制在单片机就必须存在上 述算法, 其程序流程如图 12 所示。 图 12 算法流程 计算e(n) 计算kie(n) 计算kp(e(n)- e(n-1) 计算kd(e(n)- 2e(n-1)+e(n-2) 计算u(

47、n) 计算u(n) u(n-1) e(n-1)e(n-2) e(n)e(n-1) u(n)u(n-1) 返回 图4.1pid程序流程 第十一届“挑战杯”辽宁省大学生课外学术科技作品竞赛 20 小结 本课题的目的在于利用单片机实现 pid 算法产生 pwm 脉冲来控 制电机转速同时监控电压电流起到保护作用并且本设计控制灵活、 可靠、精度高,可满足测试的各项要求。可以对小型工农业的电机 简单控制实现小型化。可以与上位机通讯实现复杂控制。驱动体积 小,功耗小,采用标准器件方便更换升级。 到目前为止通过对控制器模块、电机驱动模块、lcd 显示模块、 键盘模块、数字 pid 算法、电压电流监控等进行了比

48、较深入的研究。 完成了硬件电路的系统设计,软件方面利用 c 语言进行编程,增强 了程序的可移植性和灵活性。 通过此次设计,掌握了驱动电路的相关设计及数字pid算法的使 用及编程方法,学习了如何进行系统设计及相关技巧,为今后的工 作和学习奠定了坚实的基础。 第十一届“挑战杯”辽宁省大学生课外学术科技作品竞赛 21 参考文献 1 孙传友. 测控系统原理与设计m .北京:北京航空航天大学出 版社, 2003 2 王兆安.电力电子技术(第四版). 北京:机械工业出版社, 2006 3 李广弟.单片机基础(第三版).北京:北京航空航天大学出版 社,2007 4 杨渝钦.控制电机. 北京:机械工业出版社,

49、2011 5 童诗白.模拟电子技术(第四版).北京:高等教育出版社, 2006 6 阎石.数字电子技术(第五版).北京:高等教育出版社,2005 7 王勇骥.自动控制原理(第二版).北京:化学工业出版社, 2007 8 李宏.m57957l/m57958l igbt 厚膜驱动器集成电路手册.电子发 烧友论坛.2009 9 stc12c5a60s2 系列单片机器件手册. 电子发烧友论坛.2012 10锦昌电子.12864lcd 数据手册db/ol. http:/.2006 第十一届“挑战杯”辽宁省大学生课外学术科技作品竞赛 22 附录 部分源程序 一、主程序: main( ) zf=0; fla

50、g1=0; ea=1; it0=1; ex0=1; count=0; en=0; en1=0; en2=0; u0=200; un=0; cc=0; zanting=0; pwm1=0; pwm2=0; p1=0 xf0; init_lcd(); /设置液晶显示器 clr_scr(); /清屏 left();disp_chinese(0,0,dan); /单 left();disp_chinese(0,16,pian); /片 left();disp_chinese(0,32,ji); /机 left();disp_chinese(0,48,de); /的 right();disp_chine

51、se(0,0,shu); /数 right();disp_chinese(0,16,zi); /字 right();disp_digit(0,32,dp); /p right();disp_chinese(0,40,di); /i 第十一届“挑战杯”辽宁省大学生课外学术科技作品竞赛 23 right();disp_digit(0,56,dd); /d left();disp_chinese(3,16,dian); /电 left();disp_chinese(3,32,ji); /机 left();disp_chinese(3,48,tiao); /调 right();disp_chinese

52、(3,0,shu0); /速 right();disp_chinese(3,16,xi); /系 right();disp_chinese(3,32,tong); /统 left();disp_chinese(6,48,heng); /横线 right();disp_chinese(6,0,heng); /横线 right();disp_chinese(6,16,jia); right();disp_chinese(6,32,xiao); right();disp_chinese(6,48,wei); flag0=0; for( ; ; ) /等待设置键按下 if(flag0=1) break

53、; clr_scr(); /清屏 left();disp_chinese(0,32,can); left();disp_chinese(0,48,shu); right();disp_chinese(0,0,she); right();disp_chinese(0,16,zhi); left();disp_chinese(2,4,kp); left();disp_digit(2,20,maohao); left();disp_digit(2,28,s0); left();disp_digit(2,36,s0); left();disp_digit(2,44,dian0); left();dis

54、p_digit(2,52,s0); right();disp_chinese(2,4,ki); right();disp_digit(2,20,maohao); right();disp_digit(2,28,s0); 第十一届“挑战杯”辽宁省大学生课外学术科技作品竞赛 24 right();disp_digit(2,36,s0); right();disp_digit(2,44,dian0); right();disp_digit(2,52,s0); left();disp_chinese(4,4,kd); left();disp_digit(4,20,maohao); left();dis

55、p_digit(4,28,s0); left();disp_digit(4,36,s0); left();disp_digit(4,44,dian0); left();disp_digit(4,52,s0); right();disp_chinese(4,4,v); right();disp_digit(4,20,maohao); right();disp_digit(4,28,s0); right();disp_digit(4,36,s0); right();disp_digit(4,44,s0); left();disp_chinese(6,4,zhuan); left();disp_ch

56、inese(6,20,xiang); left();disp_digit(6,36,maohao); left();disp_chinese(6,44,zheng); flag1=0; for(set=0;) /等待启动键按下 switch(set) case 0:break; case 1: left();disp_digit(2,28,s0); left();disp_digit(2,36,s0); left();disp_digit(2,52,s0); kpp=0; for(flag=0,n=0;) left();disp_digit(2,28,kong); delay12864(100

57、0); 第十一届“挑战杯”辽宁省大学生课外学术科技作品竞赛 25 left();disp_digit(2,28,sn); delay12864(2500); if(flag=1) break; left();disp_digit(2,28,sn); kpp+=10*n; for(flag=0,n=0;) left();disp_digit(2,36,kong); delay12864(1000); left();disp_digit(2,36,sn); delay12864(2500); if(flag=1) break; left();disp_digit(2,36,sn); kpp+=n;

58、 for(flag=0,n=0;) left();disp_digit(2,52,kong); delay12864(1000); left();disp_digit(2,52,sn); delay12864(2500); if(flag=1) break; left();disp_digit(2,52,sn); kpp+=0.1*n; set=0; break; 第十一届“挑战杯”辽宁省大学生课外学术科技作品竞赛 26 case 2:right();disp_digit(2,28,s0); right();disp_digit(2,36,s0); right();disp_digit(2,5

59、2,s0); kii=0; for(flag=0,n=0;) right();disp_digit(2,28,kong); delay12864(1000); right();disp_digit(2,28,sn); delay12864(2500); if(flag=1) break; right();disp_digit(2,28,sn); kii+=10*n; for(flag=0,n=0;) right();disp_digit(2,36,kong); delay12864(1000); right();disp_digit(2,36,sn); delay12864(2500); if

60、(flag=1) break; right();disp_digit(2,36,sn); kii+=n; for(flag=0,n=0;) right();disp_digit(2,52,kong); delay12864(1000); right();disp_digit(2,52,sn); 第十一届“挑战杯”辽宁省大学生课外学术科技作品竞赛 27 delay12864(2500); if(flag=1) break; right();disp_digit(2,52,sn); kii+=0.1*n; set=0; break; case 3:left();disp_digit(4,28,s0

温馨提示

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

评论

0/150

提交评论