我是靠谱客的博主 友好路人,这篇文章主要介绍使用STC8H1K28控制微型磁悬浮■ 前言01单片机电路模块102基本测试03施加反馈控制※ 结论,现在分享给大家,希望可以做个参考。

■ 前言


电磁铁的磁芯实验 中介绍了 Magnetic Levitation - The Easy Way | Elektor Magazine 中使用继电器线圈做磁悬浮的方式。电路非常简单,制作相对容易。

下面对该实验进行测试,并为今后使用模型建立打下基础。

 

01单片机电路模块1


1.电路模块设计

▲ STC8H1K28原理图

▲ STC8H1K28原理图

▲ STC8H1K28PCB图

▲ STC8H1K28PCB图

  • 用于实验的IO端口功能定义:
序号符号功能
1ADC0模拟输入0
2ADC1模拟输入1
3GND电源地线
4+5V电源5V
5PWM1PWM1
6PWM2PWM2
7PWM3PWM3
8PWM4PWM4

★ 调试结论:

在使用PWM输出时,值需要引出 PWM1P

2.单片机软件2

● PWM输出

应用STC8H1K28的PWM1,2输出占空比可调波形,来控制线圈两端的电压。

功率输出部分使用了一款电机驱动MOS板来线圈。

▲ 实验电路以及电机驱动模块

▲ 实验电路以及电机驱动模块

输出PWM信号:

  • 频率:10kHz;
  • 幅值:12V;
  • 占空比:0~100%

▲ 输出PWM波形,频率为10kHz

▲ 输出PWM波形,频率为10kHz

 

02基本测试


1.测试施加电压与A1308的输出

在磁铁下面安装一个A1308线性HALL。测量在线圈施加PWM电压与A1308输出之间的关系。

设置MCU的PWM1,2 与电机驱动板连接、电机驱动板的输出与继电器线圈的连接极性,使得最终,施加的电压越大,HALL的输出越高。如果极性相反,只需要改变MCU与电机接口,或者电机接口与线圈之间的连接顺序即可。

▲ A1308线性HALL安装位置

▲ A1308线性HALL安装位置

设置SetPWMOut函数,输入参数从-100~100。分别表示施加在继电器两端的电压从-12V到+12V 。

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
void SetPWMOut(int nRatio) { unsigned long lnNumber; unsigned char ucNegFlag; unsigned int nNumber; ucNegFlag = 0; if(nRatio < 0) { ucNegFlag = 1; nRatio = -nRatio; } if(nRatio >= 100) nRatio = 100; lnNumber = PWM1_ARR_2; lnNumber *= nRatio; lnNumber /= 100; nNumber = (unsigned int)lnNumber; if(ucNegFlag == 0) nNumber += PWM1_ARR_2; else nNumber = PWM1_ARR_2 - nNumber; PWM1SetDuty(nNumber); PWM2SetDuty(PWM1_ARR_1 - nNumber); }

▲ SetPWMOut设置与线圈两端的电压之间的关系

▲ SetPWMOut设置与线圈两端的电压之间的关系

将A1308的输出连接到STM8H1K28的ADC1(注意:不是0),读取AD1308的输出。
▲ PWM设置与A1308输出的ADC

▲ PWM设置与A1308输出的ADC

 

03施加反馈控制


从单片机的CH0读入设定电压值。
然后通过比较AD1308的电压值与输入设定电压,进行负反馈控制。

复制代码
1
2
3
4
nDelta = ADCConvert() - nADC; if(nDelta > 0) SetPWMOut(-99); else SetPWMOut(99);

▲ 施加负反馈之后的悬浮状态

▲ 施加负反馈之后的悬浮状态

▲ 不加空气阻尼是悬浮振荡

▲ 不加空气阻尼是悬浮振荡

 

※ 结论


对于使用继电器线圈制作电磁悬浮的小实验进行实验,初步验证了该方式的可行性。遗留一下问题为今后实验所证实, 对该实验中的各个器件进行数学建模,寻找悬浮稳定参数建立理论分析。


  1. 单片机AD工程文件:ADTest2020ExperimentMagneticLevitationMLSTC8H1K28.PcbDoc * ↩︎

  2. 单片机控制软件工程:C51STCTest2020ExperimentMLSTC8H1K28MLSTC8H1K28.uvproj ↩︎

最后

以上就是友好路人最近收集整理的关于使用STC8H1K28控制微型磁悬浮■ 前言01单片机电路模块102基本测试03施加反馈控制※ 结论的全部内容,更多相关使用STC8H1K28控制微型磁悬浮■内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(138)

评论列表共有 0 条评论

立即
投稿
返回
顶部