磁悬浮实验报告
大学磁悬浮实验报告

大学磁悬浮实验报告实验报告大学磁悬浮实验报告一、实验目的本次实验的目的是研究磁悬浮原理以及悬浮高度与磁场大小的关系,进一步深化我们对磁场和力学的理解。
二、实验原理磁悬浮是利用了超导体和永久磁铁之间的相互作用力而实现的。
当超导体置于磁场中时,由于超导体本身特殊的电性质,从而可使磁场在超导体内不存在。
因此,超导体内的物体可以通过永久磁铁的磁场被悬浮起来。
根据悬浮高度与磁场大小的关系,我们可以通过调整磁铁磁场大小来控制物体的悬浮高度。
三、实验步骤1. 将永久磁铁放在台面上,保持水平。
2. 将超导体放在磁铁上方,调整超导体位置。
3. 均匀地撒上磁铁粉末,观察物体和磁铁之间的作用力,进一步调整物体的位置。
4. 测量物体悬浮的高度,记录数据。
5. 重复实验3-4步骤,分别记录不同磁铁大小下物体的悬浮高度。
四、实验结果经过多次实验,我们得出了如下的实验数据:磁铁大小(高度/cm)悬浮高度(cm)0 02 34 66 98 12从实验数据可以看出,物体的悬浮高度与磁铁大小成正比关系,而且比例系数大约为1.5。
五、实验结论通过本次实验,我们深入了解了磁悬浮的原理以及物体悬浮高度与磁场大小的相关性。
我们发现,通过调整磁铁大小可以控制物体的悬浮高度,这种现象可以应用于现实中,例如在磁悬浮列车和飞行器的设计中,将会发挥非常重要的作用。
六、实验感想本次实验让我深入了解了磁悬浮的原理,而且还体验了调整实验条件、记录数据和分析数据的整个过程。
在实验中,我深刻体会到了科学精神,也更加珍惜科学实验的机会,希望以后能再次参加这样有趣、实用的实验。
磁悬浮实验报告(二)2024

磁悬浮实验报告(二)引言概述:本文是关于磁悬浮实验的报告,主要介绍了磁悬浮技术的原理和应用。
通过逐步探索磁悬浮的机制和实验条件,我们进一步认识了磁悬浮技术在交通运输和工程领域的巨大潜力。
本报告将首先介绍磁悬浮的基本原理,然后讨论具体实验的方法和结果,最后总结实验的主要收获和局限性。
正文:1. 磁悬浮的基本原理:- 电磁原理- 磁悬浮的运行机制- 磁悬浮与传统交通方式的比较- 磁悬浮对环境的影响2. 实验方法:- 实验装置的搭建- 实验所需材料和设备的准备- 实验条件和参数的设定- 数据采集和记录方法- 实验的安全措施3. 实验结果与分析:- 磁悬浮列车的悬浮高度与速度的关系- 磁悬浮列车的推力与电流的关系- 磁悬浮装置的能耗与负载的关系- 磁悬浮装置的稳定性和安全性分析- 磁悬浮技术在轨道交通和物流方面的应用展望4. 实验的主要收获:- 深入了解了磁悬浮技术的特点和工作原理- 掌握了磁悬浮实验的常用方法和数据处理技巧- 发现了磁悬浮技术在交通运输领域的潜力和局限性- 对磁悬浮技术的发展和应用提出了一些建议5. 实验的局限性和改进方向:- 实验条件限制和误差分析- 实验过程中的技术难题和挑战- 磁悬浮技术在实际应用中需要解决的问题- 下一步实验的改进方向和扩展总结:通过本次磁悬浮实验,我们对磁悬浮技术的原理和实际应用有了更深入的了解。
我们发现,磁悬浮技术具有广阔的应用前景,可以用于提高交通运输的效率和减少能源消耗。
然而,磁悬浮技术在工程实践中还面临着一些技术和经济上的挑战。
在未来的研究中,我们将进一步优化磁悬浮实验方法,探索更好的磁悬浮材料和设备,以实现更高效、安全和可持续的磁悬浮系统。
磁悬浮实验报告(一)2024

磁悬浮实验报告(一)引言概述本文档旨在提供对磁悬浮实验的详细分析和结论。
磁悬浮技术是一种利用磁场与磁体相互作用产生浮力的技术,它在交通运输、工业制造等领域具有广泛的应用前景。
通过该实验,我们将探索磁悬浮技术的基本原理和悬浮稳定性的影响因素。
正文内容1. 实验装置搭建- 首先,我们准备了磁悬浮实验所需的磁体和磁场产生装置。
- 其次,我们安装了用于测量悬浮高度和稳定性的传感器和仪器。
- 最后,我们调整了磁场强度和位置,以确保磁悬浮平台的稳定性和可控性。
2. 磁悬浮原理分析- 我们对磁悬浮的基本原理进行了详细解释,包括法拉第电磁感应定律和电磁力学原理。
- 我们介绍了磁悬浮实验中所需的磁场调节和控制技术,以保证悬浮平台的平稳运行。
3. 悬浮稳定性实验- 我们对悬浮系统中的稳定性进行了详细研究。
- 我们分析了悬浮高度、磁场强度和位置调节对悬浮稳定性的影响。
- 我们通过实验数据和观察结果,评估了悬浮稳定性的变化趋势。
4. 动态特性分析- 我们对磁悬浮系统的动态特性进行了研究。
- 通过改变悬浮平台上的负载和外力的作用,我们观察了系统响应的速度和稳定性。
- 我们使用传感器和仪器来记录和分析系统的动态响应,以便进一步优化磁悬浮系统。
5. 发展前景和挑战- 我们讨论了磁悬浮技术在交通运输和工业制造中的潜在应用前景。
- 同时,我们也提出了当前磁悬浮技术面临的一些挑战和限制,并提出了进一步改进的可能性。
总结通过本文档,我们详细介绍了磁悬浮实验的搭建过程、磁悬浮原理、悬浮稳定性实验、动态特性分析以及磁悬浮技术的发展前景和挑战。
这些研究将为磁悬浮技术的应用和进一步研究提供有益的参考。
我们相信,随着磁悬浮技术的不断发展和完善,它将在未来的交通和工业领域发挥重要作用。
磁悬浮实验实验报告

实验报告课程名称:__工程电磁场与波____指导老师:_____姚缨英_____ 实验名称:磁悬浮 _实验类型:____ ____同组学生姓名:____一、实验目的和要求(必填)二、实验内容和原理(必填)三、主要仪器设备(必填)四、操作方法和实验步骤五、实验数据记录和处理六、实验结果与分析(必填)七、讨论、心得一、实验目的1、观察自稳定的磁悬浮物理现象;2、了解磁悬浮的作用机理及其理论分析的基础知识;3、在理论分析与实验研究相结合的基础上,力求深化对磁场能量、电感参数和电磁力等知识点的理解。
二、实验原理(1)自稳定的磁悬浮物理现象由盘状载流线圈和铝板相组合构成磁悬浮系统的实验装置,该系统中可调节的扁平盘状线圈的激磁电流由自耦变压器提供,从而在50 hz正弦交变磁场作用下,铝质导板中将产生感应涡流,最终表征为盘状载流线圈自稳定的磁悬浮现象。
(2)基于虚位移法的磁悬浮机理的分析将盘状载流线圈和铝板组合看成一个磁系统。
为简化分析,将铝板看作为一半无限大完纯导体。
事实上当激磁频率为50 hz 时,只有当铝板表面相对扁平盘状线圈足够大,而厚度b 远大于该频率下铝板的透入深度d,才能作这一理想化假设。
在此前提下,应用镜像法,可导得该磁系统的自感为式中, a ——盘状线圈被理想化为单匝圆形线圈时的平均半径;n ——线匝数;r ——导线被看作圆形导线时的等效圆半径。
当通入盘状线圈的激磁电流增大到使其与铝板中感生涡流合成的磁场,对盘状载流线圈作用的电磁力足以克服线圈自重时,线圈即浮离铝板,呈现自稳定的磁悬浮物理现象。
此时,作用于盘状载流线圈的向上的电磁力必然等于该线圈的重量。
现应用虚位移法来求取作用于该磁悬浮系统的电动推斥力。
对盘状载流线圈和铝板组合的磁系统,其对应于力状态分析的磁2场能量为wm=l*i/2。
式中,i 为激磁电流的有效值。
其次,取盘状载流线圈与铝板之间相对位移h(即给定的悬浮高度)为广义坐标,按虚位移法可求得作用于该系统的电动推斥力,也就是作用于盘状载流线圈的向上的电磁悬浮力从而,由稳定磁悬浮状态下力的平衡关系,即式中,m ——盘状线圈的质量(kg);g ——重力加速度(9.8 m/s2);即可得对于给定悬浮高度 h 的磁悬浮状态,系统所需激磁电流为三、实验内容(1)观察自稳定的磁悬浮物理现象(2)实测对应于不同悬浮高度的盘状线圈的激励电流四、操作方法和实验步骤1、观察自稳定的磁悬浮物理现象在给定厚度为14 mm的铝板情况下,通过调节自耦变压器以改变输入盘状线圈的激磁电流,从而观察在不同给定悬浮高度h的条件下,起因于铝板表面层中涡流所产生的去磁效应,而导致的自稳定的磁悬浮物理现象2、实测对应于不同悬浮高度的盘状线圈的激磁电流在厚度为14 mm的铝板情况下,以5 mm为步距,对应于不同的悬浮高度,逐点测量稳定磁悬浮状态下盘状线圈中的激磁电流,记录其悬浮高度h与激磁电流i的相应读数。
磁悬浮实验实验报告

磁悬浮实验实验报告磁悬浮实验实验报告引言:磁悬浮技术是一项基于磁力原理的先进技术,广泛应用于交通运输、科研实验等领域。
本实验旨在通过搭建一个简单的磁悬浮装置,探究磁悬浮技术的原理和应用。
实验一:磁悬浮装置的搭建我们首先准备了以下材料:一块磁性材料、一块导电材料、一块永磁体、一根铜线和一台电源。
我们将磁性材料和导电材料分别固定在一块平板上,然后将永磁体放置在平板下方。
接下来,我们将铜线连接到电源上,并将其放置在导电材料上方。
当通电时,铜线中的电流会产生磁场,与永磁体的磁场相互作用,从而使导电材料悬浮在磁性材料上方。
实验二:磁悬浮装置的稳定性为了测试磁悬浮装置的稳定性,我们对装置进行了一系列实验。
首先,我们调整电源的电流,观察导电材料在不同电流下的悬浮高度。
结果显示,随着电流的增加,导电材料的悬浮高度逐渐增加。
这表明,磁悬浮装置的稳定性与电流大小有关。
接下来,我们改变了永磁体的位置,观察导电材料的悬浮情况。
实验结果显示,当永磁体离导电材料较近时,悬浮高度较低;而当永磁体离导电材料较远时,悬浮高度较高。
这说明,磁悬浮装置的稳定性与永磁体与导电材料之间的距离有关。
实验三:磁悬浮装置的应用除了探究磁悬浮装置的原理和稳定性外,我们还研究了其在实际应用中的潜力。
磁悬浮技术在交通运输领域有着广泛的应用,例如高速磁悬浮列车。
这种列车通过利用磁悬浮技术,可以在轨道上悬浮行驶,减少了与轨道的摩擦阻力,提高了列车的运行速度和效率。
此外,磁悬浮技术还可以应用于科研实验。
例如,在物理学实验中,磁悬浮装置可以用于制造零摩擦环境,以便研究物体的运动规律。
在化学实验中,磁悬浮技术可以用于悬浮液滴,以便进行微小反应的观察和控制。
结论:通过本次实验,我们成功搭建了一个简单的磁悬浮装置,并探究了其原理、稳定性和应用。
磁悬浮技术在交通运输和科研实验中具有重要的应用价值。
未来,我们可以进一步研究磁悬浮技术的改进和创新,以推动其在更多领域的应用和发展。
大学磁悬浮实验报告

大学磁悬浮实验报告1. 实验目的。
本实验旨在通过磁悬浮系统的搭建和调试,了解磁悬浮技术的基本原理和应用,掌握磁悬浮系统的工作原理和调试方法。
2. 实验原理。
磁悬浮技术是利用磁场对物体进行悬浮和定位的技术。
在磁悬浮系统中,通常会使用永磁体和电磁体来产生磁场,通过控制磁场的强度和方向,实现对物体的悬浮和定位。
磁悬浮系统通常包括传感器、控制器和执行器等部件,通过这些部件的协调工作,可以实现对物体的精确悬浮和定位。
3. 实验装置。
本次实验使用了磁悬浮实验装置,该装置包括永磁体、电磁体、传感器、控制器和执行器等部件。
通过这些部件的组合和调试,可以实现对物体的磁悬浮和定位。
4. 实验步骤。
(1)搭建磁悬浮系统,首先,按照实验指导书的要求,搭建磁悬浮系统的结构,包括永磁体、电磁体、传感器和执行器等部件的组装和连接。
(2)调试磁悬浮系统,接下来,对搭建好的磁悬浮系统进行调试,包括对永磁体和电磁体的磁场强度和方向进行调节,以及对传感器和执行器的连接和设置进行调试。
(3)测试磁悬浮效果,最后,对调试好的磁悬浮系统进行测试,观察和记录磁悬浮效果,包括对物体的悬浮和定位情况进行测试和分析。
5. 实验结果。
经过调试和测试,我们成功搭建和调试了磁悬浮系统,并取得了良好的磁悬浮效果。
通过实验,我们深入了解了磁悬浮技术的基本原理和应用,掌握了磁悬浮系统的工作原理和调试方法。
6. 实验总结。
通过本次实验,我们对磁悬浮技术有了更深入的了解,掌握了磁悬浮系统的搭建和调试方法,为将来的科研和工程实践奠定了基础。
同时,我们也意识到磁悬浮技术在现代工程领域的重要应用前景,对其发展和应用充满信心。
7. 实验改进。
在今后的实验中,我们可以进一步探索磁悬浮技术的应用领域,开展更深入的研究和实践,为磁悬浮技术的发展和应用做出更大的贡献。
通过本次实验,我们对磁悬浮技术有了更深入的了解,掌握了磁悬浮系统的搭建和调试方法,为将来的科研和工程实践奠定了基础。
磁悬浮实验报告

磁悬浮实验报告磁悬浮实验报告引言:磁悬浮是一种利用磁力使物体悬浮在空中的技术,它具有许多潜在的应用领域,如高速列车、磁悬浮轮椅等。
本实验旨在通过搭建一个简单的磁悬浮装置,探索磁悬浮的原理和特性。
一、实验材料和装置本实验所需材料包括磁铁、磁铁座、导线、电池和磁悬浮平台。
磁悬浮平台由一块磁铁和一个导线构成,磁铁座用于固定磁铁。
二、实验步骤1. 将磁铁座固定在平面上,确保它稳定不动。
2. 将磁铁放在磁铁座上,确保它与座位紧密贴合。
3. 将导线绕在磁铁上,形成一个圆圈,并确保导线两端不相连。
4. 将导线的一端连接到电池的正极,另一端连接到电池的负极。
5. 打开电池开关,观察磁悬浮平台的运动情况。
三、实验结果在实验过程中,我们观察到磁悬浮平台在电流通过导线时开始悬浮在空中。
当电流通过导线时,产生的磁场与磁铁的磁场相互作用,产生一个向上的力,使磁悬浮平台悬浮在空中。
当电流关闭时,磁悬浮平台会下降并与磁铁接触。
四、实验分析磁悬浮的原理是基于磁场的相互作用。
当电流通过导线时,产生的磁场会与磁铁的磁场相互作用,产生一个向上的力,使物体悬浮在空中。
这种相互作用力可以通过安培定律来解释。
安培定律指出,当电流通过导线时,产生的磁场会产生一个力,作用在与磁场相互作用的物体上。
磁悬浮的关键是控制磁场的强度和方向。
在本实验中,我们通过改变电流的方向和大小来控制磁场的强度和方向。
当电流通过导线时,产生的磁场与磁铁的磁场相互作用,产生一个向上的力,使物体悬浮在空中。
当电流关闭时,磁悬浮平台会下降并与磁铁接触,因为没有磁场的相互作用力来支撑它。
磁悬浮技术在实际应用中有许多潜力。
例如,磁悬浮列车可以通过减少与轨道的摩擦来实现高速运行,从而提高列车的速度和效率。
此外,磁悬浮技术还可以应用于医疗设备,如磁悬浮轮椅,使患者在移动时更加舒适。
然而,磁悬浮技术也存在一些挑战和限制。
首先,磁悬浮装置的制造和维护成本较高。
其次,磁悬浮装置对环境的要求较高,需要一个稳定的磁场和平整的表面。
磁悬浮实验实验报告

1. 了解磁悬浮技术的原理和基本操作。
2. 掌握磁悬浮实验的步骤和方法。
3. 通过实验,观察磁悬浮现象,分析磁悬浮系统的稳定性和悬浮高度与激磁电流的关系。
二、实验原理磁悬浮技术是利用磁力使物体悬浮在空中,避免物体与支撑面接触,从而减少摩擦和能量损耗。
实验中,通过改变激磁电流的大小,观察磁悬浮系统在不同悬浮高度下的稳定性。
三、实验器材1. 磁悬浮实验装置一套(包括磁悬浮盘、磁悬浮支架、激磁电流线圈、电源等)。
2. 测量工具(如尺子、万用表等)。
四、实验步骤1. 搭建实验装置,将磁悬浮盘放置在磁悬浮支架上,确保磁悬浮盘与支架平行。
2. 将激磁电流线圈绕在磁悬浮盘上,确保线圈与磁悬浮盘紧密贴合。
3. 连接电源,调整激磁电流的大小。
4. 观察磁悬浮盘在不同激磁电流下的悬浮状态,记录悬浮高度和激磁电流的对应关系。
5. 改变激磁电流的大小,重复步骤4,观察磁悬浮盘的悬浮状态。
五、实验结果与分析1. 观察到当激磁电流较小时,磁悬浮盘处于悬浮状态,但悬浮高度较低;随着激磁电流的增大,悬浮高度逐渐升高。
2. 当激磁电流过大时,磁悬浮盘开始接触支架,悬浮状态不稳定。
3. 通过实验数据可知,悬浮高度与激磁电流之间存在一定的关系,具体表现为:在一定范围内,激磁电流越大,悬浮高度越高。
1. 磁悬浮技术是一种利用磁力实现物体悬浮的技术,具有减少摩擦和能量损耗的优点。
2. 磁悬浮系统的稳定性与激磁电流的大小有关,在一定范围内,激磁电流越大,悬浮高度越高,系统越稳定。
3. 通过本实验,掌握了磁悬浮实验的步骤和方法,为后续研究磁悬浮技术奠定了基础。
七、实验总结本次实验成功地实现了磁悬浮现象的观察,通过实验数据的分析,得出了悬浮高度与激磁电流的关系。
在实验过程中,我们了解到磁悬浮技术的原理和应用,提高了对磁悬浮系统的认识。
同时,通过实际操作,锻炼了我们的动手能力和实验技能。
在今后的研究中,我们可以进一步探讨磁悬浮系统的优化设计,提高磁悬浮技术的稳定性和悬浮高度,为磁悬浮技术的发展和应用提供有力支持。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
开放性试验:《磁悬浮原理实验仪制作及PID控制》试验报告实验内容:学生通过磁悬浮有关知识的学习,根据已有的试验模型,设计出磁悬浮实验仪器,并进行制作,进而在计算机上用PID技术进行调节和控制。
难点:PID控制程序的编写及调试。
创新点:该实验以机械学院数控所得科研成果为依托,以一种新颖的方式,用磁悬浮小球直观的展示了PID控制理论的应用。
该仪器构造简单,成本低廉。
此实验综合应用了电磁场、计算机、机械控制等相关知识,具有一定的研究创新性特点。
该仪器有望成为中学物理实验仪器,和高校PID 控制实验仪器。
关键问题1.悬浮线圈的优化设计2.磁悬浮小球系统模型3.磁悬浮小球的PID控制电磁绕组优化设计小球质量:钢小球质量:15~20g小球直径:15mm悬浮高度:3mm要求:根据悬浮高度、小球大小、小球重量设计悬浮绕组绕组铁芯尺寸、线圈匝数、额定电流、线径。
电磁绕组优化设计:由磁路的基尔霍夫定律、毕奥-萨格尔定律和能量守恒定律,可得电磁吸力为:式中:μ0——空气磁导率,4πX10-7H/m ; A ——铁芯的极面积,单位m2; N ——电磁铁线圈匝数;z ——小球质心到电磁铁磁极表面的瞬时气隙,单位m ; i ——电磁铁绕组中的瞬时电流,单位A 。
功率放大器中放大元器件的最大允许电压为15V 。
为了降低功率放大器件上的压力差,减少功率放大器件的发热,设定悬浮绕组线圈电压该值为12V 。
约束条件:U =12V 电流、电压与电阻的关系电阻:L ——漆包线的总长度/m S ——漆包线的横截面积/m2d ——线径的大小/mε是漆包线线的电阻率,查表可知: ε=1.5*1.75*e-8,单位:Ω*m根据线圈的结构,可以得出漆包线的总长度为:2202⎪⎭⎫⎝⎛-=z i AN F μUi R=L R Sε=214S d π=11()ni L L a id dπ==+∑ 线圈的匝数为:综上所述,电磁力为:在线圈骨架几何尺寸和所加的电压固定的情况下,线圈漆包线线径d 越大,漆包线的长度L 越小,电磁力F 越大 。
另外,漆包线线径和电流之间还存在下述关系:因此,线径d 越大通过线圈的电流也大,线圈发热越严重。
优化漆包线线径和线长必须综合考虑电磁力大小、线圈额定电流。
由最优的漆包线线径和线长,就可以得到合理的电磁绕组结构参数。
磁悬浮小球系统模型将钢质小球放入电磁铁产生的磁场中,用传感器检测钢球在螺线管磁场中2b a n d-=dnL N /1-=222201222()128AL b a U F z L μπε-=-LU d i επ42=时,控制理论的其它技术难以采用时,系统控制器的结构和参数必须依靠经验和现场调试来确定,这时应用PID控制技术最为方便。
即当我们不完全了解一个系统和被控对象﹐或不能通过有效的测量手段来获得系统参数时,最适合用PID控制技术。
比例控制能迅速反应误差,从而减小稳态误差。
但是,比例控制不能消除稳态误差。
比例放大系数的加大,会引起系统的不稳定。
积分控制的作用是,只要系统有误差存在,积分控制器就不断地积累,输出控制量,以消除误差。
因而,只要有足够的时间,积分控制将能完全消除误差,使系统误差为零,从而消除稳态误差。
积分作用太强会使系统超调加大,甚至使系统出现振荡。
微分控制可以减小超调量,克服振荡,使系统的稳定性提高,同时加快系统的动态响应速度,减小调整时间,从而改善系统的动态性能。
PID控制器参数整定的方法很多,概括起来有两大类:一是理论计算整定法。
它主要是依据系统的数学模型,经过理论计算确定控制器参数。
这种方法所得到的计算数据未必可以直接用,还必须通过工程实际进行调整和修改。
二是工程整定方法,它主要依赖工程经验,直接在控制系统的试验中进行,且方法简单、易于掌握,在工程实际中被广泛采用。
PID控制器参数的工程整定方法,主要有临界比例法、反应曲线法和衰减法。
临界比例度法进行PID控制器参数的整定步骤:(1)首先预选择一个足够短的采样周期TS,一般说TS应小于受控对象纯延迟时间的十分之一。
(2)用选定的TS,仅加入比例控制环节使系统工作,逐渐减小比例度,即加大比例放大系数KP,直至系统对输入的阶跃信号的响应出现临界振荡(稳定边缘),将这时的比例放大系数记为Kr,临界振荡周期记为Tr。
(3) 以连续-时间PID控制器为基准,建立数字PID的控制度评价函数,通过公式计算或查表确定PID控制器的参数TS,KP,TI和TD 。
反应曲线法(实验凑试法)通过闭环运行或模拟,观察系统的响应曲线,然后根据各参数对系统的影响,反复凑试参数,直至出现满意的响应,从而确定PID控制参数。
实验凑试法的整定步骤为“先比例,再积分,最后微分”。
(1)整定比例控制将比例控制作用由小变到大,观察各次响应,直至得到反应快、超调小的响应曲线。
(2)整定积分环节若在比例控制下稳态误差不能满足要求,需加入积分控制。
先将步骤(1)中选择的比例系数减小为原来的50~80%,再将积分时间置一个较大值,观测响应曲线。
然后减小积分时间,加大积分作用,并相应调整比例系数,反复试凑至得到较满意的响应,确定比例和积分的参数。
(3)整定微分环节若经过步骤(2),PI控制只能消除稳态误差,而动态过程不能令人满意,则应加入微分控制,构成PID控制。
先置微分时间TD=0,逐渐加大TD,同时相应地改变比例系数和积分时间,反复试凑至获得满意的控制效果和PID控制参数。
比例十积分十微分(PID)控制器式中KP——比例放大系数;TI——积分时间; TD——微分时间。
PID控制的程序实现:Up=Kp*error(k)Ui=Ui+Ki*error(k)Ud=Kd*(error(k)-error(k-1))U=Up+Ui+Ud在程序中我们采用的是增量是算法磁悬浮控制器介绍1、磁悬浮控制系统原理框图磁悬浮控制器组成资源配置:*P0.0蜂鸣器,P0.1测试灯,P0.2、P0.3两个按键。
*P1.0-P1.4五路A/D;*P1.5-P1.7控制LED;*P2.0-P2.7液晶数据传输;*P3.2-P3.4液晶控制线;*P3.0、P3.1接RS-232;*P3.5、P3.7两路DA;1、P0口:STC125412AD的P0口只有四个引脚,资源分配如下:P0.0蜂鸣器,P0.1测试灯,P0.2、P0.3两个按键。
2、STC125412AD的I/O口资源介绍:*四个I/O口,共27个引脚,其中P0口上只有4个引脚P0.0-P0.3,P3口上只有7个引脚却少P3.6脚,P1、P2口和8051一样有8个引脚;*所有I/O口都有四种类型:准双向口(传统8051模式)、推挽输出、仅为输入和开漏模式,均可由软件配置成4种工作类型之一; *每个口由2个控制寄存器(PxM0和PxM1)中的相应位控制每个引脚工作类型;举例:P2M0=0xC0;P2M0=0xA0;P2.7为开漏,P2.6为高阻输入,P2.5为推挽输出,P2.4-P2.0为弱上拉。
1、控制器设计了5路AD,都经调理送入单片机,占用P1.0-P1.4五个I/O引脚,其中P1.4用于采集传感器送入信号,P1.1-P1.3用于控制PID算法参数,P0.0用于设置小球浮起高度。
2、设置P1口:设置:P1M0=0x1F;P1M1=0x00;或者P1M0=0x1F;PIM1=0x1F;传感器信号AD转换原理框图2、控制信号AD转换原理框图1、控制器设计了两路DA,占用P3.5和P3.7两个引脚,P3.5路DA 送往功率放大器,P3.7路DA备用。
2、DA电路原理:STC12C5412AD本没有集成DA转换功能,但是它有4路的PWM(脉冲宽度调制)信号,PWM信号可以通过调理电路转化为DA信号。
3、DA电路原理框图:4、I/O口设定:不能设置为高阻输入!6、LED模块1、P1.5-P1.7控制8个数码管(LED)为了节省I/O资源,选用了一片MAX7219。
2、MAX7219简介*一种高集成化的串行输入/输出的共阴极LED显示驱动器;*每片可驱动8位7段加小数点的共阴极数码管,与单片机相连仅需3根线;*包括BCD译码器、多位扫描电路、段驱动器、位驱动器和用于存放每个数据位的8X8静态RAM以及数个工作寄存器;*可以编程控制工作寄存器,可以使MAX7219进入不同的工作状态。
*控制信号:DIN为串行数据输入端,CIK为串行时钟输入端,LOAD 为片选端;*DIGO~DIG7为吸收显示器共阴极电流的位驱动线,其最大值可达500mA;*SEGA~SEGG,DP 为驱动显示器7段及小数点的输出电流,一般为40mA左右;*DOUT 为串行数据输出端,通常直接接入下一片MAX7219的DIN端。
在试验中使用的源程序://test.c#include <STC12C5410AD.H>#include <intrins.h>#include<stdio.h>p0m0=0;p0m1=0x00;sbit p02=P0^2;sbit p03=P0^3;sbit p00=P0^0;sbit p01=P0^1;extern pid(int kp,ki,kd,spec,yk);extern disp1(unsigned char dat[4]); //有时候真的很无奈,就少了一点东西。
就是出不来啦,注意extern花了一天的时间,外加另建了一个项目。
无语了extern disp2(unsigned char dat[4]); //没一个冒号;害了我老半天,特别注意了extern unsigned int ADC_TURNON(unsigned char speed,chanl); extern void Delayms(void);extern void dac(unsigned char pwm);extern void disp_kp();extern void disp_ki();extern void disp_kd();unsigned char flag=1;void delay(unsigned int x);void main(){int kp=0,ki=0,kd=0,spec=0,yk=0;unsigned char da;unsigned char show0[4]={0x00,0x01,0x02,0x03}; unsigned int a=0,b=0;while(1){p03=0;a=ADC_TURNON(3,0);show0[0]=(unsigned char)(a/1000);show0[1]=(unsigned char)((a%1000)/100);show0[2]=(unsigned char)(((a%1000)%100)/10); show0[3]=(unsigned char)(((a%1000)%100)%10); disp1(show0);Delayms();b=ADC_TURNON(3,4);show0[0]=(unsigned char)(b/1000);show0[1]=(unsigned char)((b%1000)/100);show0[2]=(unsigned char)(((b%1000)%100)/10); show0[3]=(unsigned char)(((b%1000)%100)%10); disp2(show0);Delayms();kp=ADC_TURNON(3,3);ki=ADC_TURNON(3,2);kd=ADC_TURNON(3,1);spec=ADC_TURNON(3,0);yk=ADC_TURNON(3,4);da=pid(kp/100,ki/10,kd/10,spec/10,yk/10); dac(da);if(p02==0&&flag==1){ flag++;disp_kp();delay(20);}if(p02==0&&flag==2){ flag++;disp_ki();delay(20);}if(p02==0&&flag==3){flag=1;disp_kd();delay(20);}}//while的终止}//main的终止void delay(unsigned int x) {unsigned int m,k ;for (m=0;m<x;m++){for (k=0;k<0xffff;k++); }}n=(unsigned char)((b%1000)/100);}//disp.c用来led显示结果#include <STC12C5410AD.H>#include <intrins.h>sbit P15 =P1^5;sbit P16 = P1^6;sbit P17 = P1^7;#define din P17#define load P16#define clk P15#define NoOp 0x00#define Digit0 0x01#define Digit1 0x02#define Digit2 0x03#define Digit3 0x04#define Digit4 0x05#define Digit5 0x06#define Digit6 0x07#define Digit7 0x08#define DecodeMode 0x09#define Intensity 0x0a#define ScanLimit 0x0b#define ShutDown 0x0c#define DisplayTest 0x0funsigned char code dispcode_char[]={0x7e,0x30,0x6d,0x79,0x33,0x5b,0x5f,0x70,0x 7f,0x7b, 0x0, 0x1};extern unsigned int ADC_TURNON(unsigned char speed,chanl);void MAX7219_Write(unsigned char com, unsigned char dat);void Delayms(void){unsigned int a,b;for(a=0;a<20;a++)for(b=0;b<100;b++);}void MAX7219_Write(unsigned char com, unsigned char dat) {unsigned char temp,i,j;load=0;clk=0;for(i=0;i<8;i++){temp=com;if((temp&(0x80>>i))!=0)din=1;elsedin=0;clk=1;for(j=0;j<5;j++);clk=0;}for(i=0;i<8;i++){temp=dat;if((temp&(0x80>>i))!=0)din=1;elsedin=0;clk=1;for(j=0;j<5;j++);clk=0;}load=1;}void MAX7219_Init(){ MAX7219_Write(ShutDown ,0x00);Delayms();MAX7219_Write(ShutDown ,0x01);MAX7219_Write(DecodeMode,0xff);MAX7219_Write(Intensity ,0x0a); // Intensity Register FormatMAX7219_Write(ScanLimit,0x07);}void MAX7219_Init1(){ MAX7219_Write(ShutDown ,0x00);Delayms();MAX7219_Write(ShutDown ,0x01);MAX7219_Write(DecodeMode,0x00);MAX7219_Write(Intensity ,0x0a); // Intensity Register FormatMAX7219_Write(ScanLimit,0x07);}void disp1(unsigned char dat[4]){ load=1;clk=1;din=1;MAX7219_Init();//设P1.0/P1.1/P1.2/P1.3/P1.4为高阻输入,其他为IOP1M0=0x1F;P1M1=0x00;MAX7219_Write(Digit0,dat[0]);MAX7219_Write(Digit1,dat[1]);MAX7219_Write(Digit2,dat[2]);MAX7219_Write(Digit3,dat[3]);}void disp2(unsigned char dat[4]){load=1;clk=1;din=1;MAX7219_Init();P1M0=0x1F;P1M1=0x00;MAX7219_Write(Digit4,dat[0]);MAX7219_Write(Digit5,dat[1]);MAX7219_Write(Digit6,dat[2]);MAX7219_Write(Digit7,dat[3]);}void disp_kp() //用于显示kp,ki,kd的值{unsigned int b;unsigned char m,n,x,y;load=1;clk=1;din=1;MAX7219_Init1();P1M0=0x1F;P1M1=0x00;MAX7219_Write(Digit0,0);MAX7219_Write(Digit1,0x0F);MAX7219_Write(Digit2,0x67);MAX7219_Write(Digit3,0);b=ADC_TURNON(3,3);m=(unsigned char)(b/1000);n=(unsigned char)((b%1000)/100);x=(unsigned char)(((b%1000)%100)/10); y=(unsigned char)(((b%1000)%100)%10);MAX7219_Write(Digit4,dispcode_char[m]);MAX7219_Write(Digit5,dispcode_char[n]);MAX7219_Write(Digit6,dispcode_char[x]);MAX7219_Write(Digit7,dispcode_char[y]); }void disp_ki() //用于显示kp,ki,kd的值{unsigned int b;unsigned char m,n,x,y;load=1;clk=1;din=1;MAX7219_Init1();P1M0=0x1F;P1M1=0x00;MAX7219_Write(Digit0,0);MAX7219_Write(Digit1,0x0F);MAX7219_Write(Digit2,0x30);MAX7219_Write(Digit3,0);b=ADC_TURNON(3,2);m=(unsigned char)(b/1000);n=(unsigned char)((b%1000)/100);x=(unsigned char)(((b%1000)%100)/10); y=(unsigned char)(((b%1000)%100)%10);MAX7219_Write(Digit4,dispcode_char[m]);MAX7219_Write(Digit5,dispcode_char[n]);MAX7219_Write(Digit6,dispcode_char[x]);MAX7219_Write(Digit7,dispcode_char[y]);}void disp_kd() //用于显示kp,ki,kd的值{unsigned char m,n,x,y;unsigned int b;load=1;clk=1;din=1;MAX7219_Init1();P1M0=0x1F;P1M1=0x00;MAX7219_Write(Digit0,0);MAX7219_Write(Digit1,0x0F);MAX7219_Write(Digit2,0x3D);MAX7219_Write(Digit3,0);b=ADC_TURNON(3,1);m=(unsigned char)(b/1000);n=(unsigned char)((b%1000)/100);x=(unsigned char)(((b%1000)%100)/10);y=(unsigned char)(((b%1000)%100)%10);MAX7219_Write(Digit4,dispcode_char[m]);MAX7219_Write(Digit5,dispcode_char[n]);MAX7219_Write(Digit6,dispcode_char[x]);MAX7219_Write(Digit7,dispcode_char[y]);}//adc.c用来实现ad转换的子程序#include <STC12C5410AD.H>#include <intrins.h>extern void Delayms(void);unsigned int ADC_TURNON(unsigned char speed,unsigned char chanl){unsigned int x,y,z;//整理SPEEDspeed&=0x03;speed=speed<<5;//整理通道chanlchanl&=0x07;//ADC_POWER开ADC_CONTR=0x80;Delayms();//加入转换速度SPEED1/SPEED0ADC_CONTR|=speed;//加入通道CHS2/CHS1/CHS0ADC_CONTR|=chanl;//启动转换ADC_CONTR|=0x08;Delayms();//查结束标志位if((ADC_CONTR&0x10)==0) //while还是if有待商榷 //复位ADC_FLAGADC_CONTR&=0xef;x=ADC_DATA;x=x*4;y=ADC_LOW2&0x03;z=x+y;return(z);//da.cda转换子程序#include <STC12C5410AD.H>#include <intrins.h>#include <my.h>void dac(unsigned char pwm){CMOD=0X02;CL=0;CH=0;CCAP0L=0x00-pwm;CCAP0H=0x00-pwm;CCAPM0=0X42;CCAP1L=0x00-pwm;CCAP1H=0x00-pwm;CCAPM1=0X42;CR=1;}//pid.c pid算法程序#include <STC12C5410AD.H>#include <intrins.h>#include<math.h>mmul(int x,int y);madd(int x,int y);char change16_8(int wd);//△yk=kp【ek-ek_1】+ki[ts*ek]+kd/ts[ek-2*ek_1+ek_2]char pid(int kp,ki,kd,spec,yk) //pid的系数,设定值spec由0通道提供,实时的值yk由4通道提供{int p,i,d,ek,ek_1,aek,ts=1,bek,k,ake,ck,ck_1;char iband=0x50;ts=20;yk=k=p=i=d=0;ek=spec-yk;//errorbek=ek-ek_1-aek;aek=ek-ek_1;if(abs(ek)>abs(iband)) i=0;//判断积分分离else i=(ek*ts)*ki;p=kp*ake;d=(kd/ts)*bek/1000;//ts去单位为1msk=madd(i,p);k=madd(k,d);k=mmul(k,kp);k=k/10;ck=k+ck_1;ck=change16_8(ck);ck_1=ck;ek_1=ek;ck=ck+0x80;//return ck;}int change32_16(int z,int t) {int s;if(t==0){if((z&0x8000)==0 )s=z;else s=0x7fff;}else if((t&0xffff)==0xffff) {if((z&0x8000)==0) s=0x7fff; else s=z;}else if ((t&0x8000)==0) s=0x7fff; else s=0x8000;return(s);}char change16_8(int wd){char z,t,s;z=wd&0x0ff;t=(wd>>8)&0x0ff;if(t==0x00){if((z&0x80)==0) s=z;else s=0x7f;}else if ((t&0xff)==0xff){if((z&0x80)==0)s=0x80;else s=z;}else if ((t&0x80)==0) s=0x7f;else s=0x80;return(s);}int mmul(int x,int y){int t,z;long s;s=x*y;z=(int)(s&0x0ffff);s=change32_16(z,t); return(s);}int madd(int x,int y){int t;t=x+y;if(x>=0&&y>=0){if((t&0x8000)!=0)t=0x7fff;}else if (x<=0&&y<=0){if((t&0x8000)==0)t=0x8000;}return(t);}试验心得及小结:当初想不就是把一个小球浮起来嘛,挺简单的,可是实际操作时才知道要把这么一个小球扶起来还真是一件不容易的事啊。