磁悬浮演示装置设计毕业设计报告(编辑修改稿)内容摘要:

作电压。 电压的稳定性决定悬浮物的稳定性。 图 电源电路 传感器电路设计 图 传感器电路 电路采用求差电路将霍尔元件接收到的电压进行放大,这里经过测量须放大 30 倍左右,如图根据公式( )可得出上图将霍尔元件的电压 放大了 21 倍。 控制线圈驱动模块设计 控制线圈模块采用了可调节,可反向的 L298N 电机驱动每组,两个线圈同名端相连(即反向串接)。 霍尔置于 4 个线圈中间的空隙,高度约在线圈中部,需注意霍尔作用面应位于线圈中轴线上,不应采用图中虚线标示的安装方式,否则会造成定位误差。 磁环置于电路板下面,需要注意的是磁环的放置会影响霍尔输出,因此运放输出中点调节最好配合磁环定位同时调节。 线圈供电模块电路图: 图 线圈供电模块电路图 磁悬浮演示装置设计 9 霍尔元件与控制线圈的安装 图中垂直部分为互相垂直的霍尔元件用于接收悬浮物的 位置变化。 霍尔元件必须位于线圈圆心的链接线上,四个圆圈表示控制线圈,长方形表示垂直的霍尔元件。 由于控制线圈互相垂直,霍尔元件也是垂直可以保证控制线圈的磁场在中间互相抵消,不会影响霍尔元件的数值,能正确的接受到磁悬浮物发生偏移时磁场的变化。 控制线圈摆于永磁上方正中心磁力线垂直向上霍尔元件检测不到,也保证了对霍尔元件的数值没有影响。 图 霍尔元件安装图 安装使用万用板上的白线为衡量,先把霍尔元件安装上,根据垂直白线摆正霍尔元件然后焊接上,霍尔元件的方向可以最好把地或者电源接在一起便于焊接。 然后四个线圈 安装上,中间留有一定大的空隙,不能太大,也不能太小,由于线圈磁力方向要相反,所以线圈两端要等待测试磁力方向后再做连接,做好必要的标识,完成如下图所示。 图 线圈霍尔元件安装实物图 磁悬浮演示装置设计 10 第 4 章 软件设计 编程语言的选择 对于 ARM 单片机有几种语言。 常用的编程语言有汇编语言和 C 语言两种,每种语言都有各自的优缺点。 汇编语言是用文字助记符来作为机器指令的底层符号语言,是最接近机器代码的一种变成语言。 汇编语言可以直接有效地控制计算机各种操作,产生的执行文件运行速度和执行效率都比高级语言好,程序体积比高 级语言小巧。 C 语言是一种高级程序设计语言,包含了很多高级语言的优点。 其本身不依赖于机器硬件设备,可将程序在不同处理器间执行,有时需要修改移植。 同时 C 语言标准库提供了多种常用数学函数,也支持浮点运算,开发效率较高,开发时间短,程序可读性高,可维护性强。 使用 C 语言来编写目标程序,开发周期缩短,程序可读性增强,易于改进和扩充,为规模更大和性能更完备的系统提供基础。 因此,用 C 语言进行单片机程序设计单片机有一定的优势,也是以后市场的趋势。 对于使用汇编语言只要能够读懂程序,只要在时间需要较精确的方面中进行程序的优化。 对于使用的汇编语言程序,只要理解它们,只要以优化程序所需要的时间更精确的方面。 不要对 C 语言结构的单片机和硬件接口有更深的了解,编译器可以自动完成分配变量存储单元,程序员可以专注于应用软件的设计和加快软件开发的速度。 用 C 语言可以很容易地编程的微控制器移植。 根据产品的特点 C 语言的模块化结构,它可以使程序模块共享,不断丰富。 根据 C语言特性的可读性,从而便于对前辈的发展经验,以提高软件的设计水平。 用 C 语言,微控制器芯片的制备通用驱动程序的功能,可以用于相应的功能的功能模块,算法的制备通用接口。 这些功能都 可以通过整理专家库,为广大的单片机爱好者完美的形成,这将大大增加国内供应链管理软件的设计水平。 主程序设计 系统中为了使得各硬件之间 能够 正确运行,有效地完成检测、传输等基本功能,除了要有合理的硬件设计外,高质量的软件支持也是必不可少的。 处理器 的执行效率,工作稳定性与其软件的设计密切相关,软件设计的好与坏直接影响系统的整体运行效果。 本设计的程序由两大部分组成,一是检测部分程序,二是 PID 计算部分。 检测部分的程序主要功能是 霍尔元件接收到的悬浮体的位置偏移。 当悬浮物发生偏移 ADC 电压会发生变化。 第二部分是 PID 算法部分。 本设计中,各种功能都是通过调用子程序来实现。 磁悬浮演示装置设计 11 各个中断服务程序都非常短小,功能不同是通过一些标志位供主程序进行判断,跳转。 这样的设计是因为在使用中断的程序中,中断服务程序如果过长,执行时间太久,会影响到其他中断服务的运行,造成系统反应迟钝等不良现象,所以我们在设计程序时尽量避 免 CPU 长时间停留在中断服务程序的运算中。 使用中断也可以有效的提高系统的工作效率。 图 总程序框图 模块程序设计 1) ADC 模块 主函数初始化 ADC 模块进入 while 循环,由于磁悬浮在空中,数据变化快, 所以经过快速的定时器中断,得到大量数据后经过滤波后,能得到准确的实时便宜位置,便于后期的控制。 主函数开始程序初始化P ID 初始化P WM 初始化AD C 初始化时钟中断初始化Wh ile ( 1 ) 循环中断处理函数AD C 采集P ID 计算 P WM 输出磁悬浮演示装置设计 12 AD C 初始化数据就收滑动平均滤波定时器中断Wh il e 循环主函数 图 ADC程序 框图 用于接收经过运放电路放大的偏移电压。 2) PWM 模块 装置使用了四个线圈,由于要使用到 L298N 的电流正反控制,所以用到了 4 路 PWM波能很好的控制线圈的正反电流和大小控制。 程序框图如下所示。 主函数PWM 初始化While 循环 定时器中断Xpo s 0 y p os 0PWM 0 输出PWM 1 关闭YesPWM 0 关闭PWM 1 输出NoPWM 2 关闭PWM 3 输出NoPWM 2 输出PWM 3 关闭Yes 图 PWM 程序框 图 根据 x 位置和 y 位置的判断所需要的电流方向,使用定时器中断能是调节时间和ADC 采样同步以免出现不必要的误差。 3) PID 算法 它由于使用灵活和用途广泛等优点,已有系列化产品,只有三个需要设定的参数( Kp, Ki 和 Kd)即可。 在很多情况下,三个参数不一定都要涉及,只需要其中的一到两个参磁悬浮演示装置设计 13 数即可,其中比例 控制 参 数 是 必要的。 在调节的最 后我们发现,只用到了比例参数和微分参数。 闭环控制是指控制对象输出(控制量)会影响输入控制器改为返回以形成一个或多个闭合回路。 闭环控制系统具有正反馈和负反馈,若负反馈信号和系统是指给定值相反的信号,如果相同的极性,则称为正反馈,闭环控制系统通常负反馈。 有实际上的闭环控制的例子很多。 举例来说,一个人是有一个负反馈回路控制系统,眼睛是传感器作为反馈,不断修正身体各个系统终于可以做出正确的举动。 如果没有眼睛,没有反馈环,它将成为一个开环控制系统。 在过程控制中,根据偏差的比例( Kp),积分( Ki),和微分( Kd)控 制的 PID 控制器(亦称 PID 调节器)是应用最广泛的一种自动控制器。 它是原理浅显,简单,用途广泛,参数独立的参数选择和比较简单的控制方式。 PID 系统框图 比 例积 分微 分被 控 对 象r ( t ) ++e ( t )++u ( t ) y ( t ) 图 PID 框图 其传递函数为 公式 u(t)=kp[e(t)+1/TI∫ e(t)dt+TD*de(t)/dt] ( ) 根据上述的公式用 C 语言实现函数如下。 int PIDCalc(PID *pid, int error) { if (pidKi != 0) { pidintegrationError += error。 // Limit the maximum integration error if (pidintegrationError MAX_INTEGRATION_ERROR) 磁悬浮演示装置设计 14 { pidintegrationError = MAX_INTEGRATION_ERROR。 } else if (pidintegrationError MAX_INTEGRATION_ERROR) { pidintegrationError = MAX_INTEGRATION_ERROR。 } } output = pidKp * error + pidKi * pidintegrationError + pidKd * (error pidprevError)。 // Limit the maximum output if (output MAX_PID_OUTPUT) { output = MAX_PID_OUTPUT。 } else if (output MAX_PID_OUTPUT) { output = MAX_PID_OUTPUT。 } pidprevError = error。 return output。 } 根据 C 语言实现 PID 算法得出的 output 值用于 PWM 控制 L298N 输出。 磁悬浮演示装置设计 15 第 5 章 调试与运行 编程工具 CCS 的介绍 CCS 包含一整套用于开发和调试嵌入式应用软件的工具。 它包含适用德州仪器( TI)器件系列的编译器,源代码编辑器,项目构建环 境,调试器,分析器,在模拟器和许多其他功能的信息。 在 CCS IDE 提供了一个单一的用户界面,以帮助您完成应用开发流程的每个步骤。 由于采用了先进的生产工具,使用快速熟悉的工具和用户界面开始,您可以将功能添加到应用程序。 CCS 基于著名源码软件框架 Eclipse。 Eclipse 软件框架可用于多种不同的领域,但是它最初被开发为开放框架以用于创建开发工具。 我们之所以选择让 CCS 基于 Eclipse ,是因为它为构建软件开发环境提供了出色的软件框架,并且正成为众多嵌入式软件供应商采用的标准框架。 CCS 将 Eclipse 软件框架的优点和德州仪器 (TI) 先进的嵌入式调试功能相结合,为嵌入式开发人员提供了一个引人注目、功能丰富的开发环境。 CCS 基于 Eclipse 的著名开源软件框架。 Eclipse 软件框架可以在许多不同的领域中使用,它最初是作为一个开放的框架,用于创建开发工具。 之所以选择 Eclipse 软件开发环境,因为它建立并提供优秀的软件框架,由众多嵌入式软件厂商的标准框架组成。 Eclipse 作为 CCS 的优势和德州仪器( TI)的软件架构,调试功能是有吸引力的,先进的内置功能,提供了嵌入式开发人员提供 了功能丰富的开发环境。 CCS 的集成调试器具有特定于 DSP 的功能和高级断点,可简化开发。 条件或硬件断点基。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。