MSP430的控制电机并测速度系统设计与调试

发布时间:2021-09-14 阅读量:1146 来源: 我爱方案网 作者: 我爱方案网整理

PWM1和PWM2接口是连接到H桥的两个接口,这里使用了G2553的定时器A1产生PWM。CAP_P12是光电对管连接到比较强后输入到单片机的一个捕获接口,因为这里可以用定时器A0的捕获接口,使用定时器的捕获功能,可以使得程序设计更为简单。整个系统利用了两个定时器,并结合中断,使得整个系统都处于休眠状态,功耗可以做得比较低(但由于电机和12864的存在,这里的低功耗程序设计显得毫无意义额。。。)。另外还有一个12864的串行外部接口(SPI)三根线。


图片2.png


MSP430的控制电机并测速度系统设计与调试


再放一个三线控制13864的图。由于MSP430x2xx系列是3.3V的器件,这里用到了一个245芯片来转换电平电压(CS和SCLK的顺序反了,后来布线的时候改的)。


MSP430的控制电机并测速度系统设计与调试


这个函数是将捕获到的定时器的脉冲计数值送到12864的一个中间转换函数,temp显示的转速,由于CPU 时钟用的1MHz,电机那里有四个黑带,所以实际的转速应该是250000/tempData,得到这个数据后转换成ASCII码,再送到12864显示。问题出现在这里,12864显示数据1000+,说明temp = 1000+,比实际的数据100+大了10倍。那么也就意味着tempData的数据比实际的真实数据小了10倍,也就是说定时器两次捕获时间的间隔比常规的要小很多,为什么会小了那么多倍呢。


电容的阻抗表达式:


MSP430的控制电机并测速度系统设计与调试


把运放的输出结果看成一个电压源,其输出电压等于RC滤波网络的输入电压假设其值为:


MSP430的控制电机并测速度系统设计与调试


那么上图所示的Vout的输出表达式为


MSP430的控制电机并测速度系统设计与调试


为了方便分析,我们假设Vi为1V,并且不考虑相位问题,取Vout的模可得


图片8.png


输出表达式与输入频率的关系找到了,那么我们的电容值又该怎么设计呢?考虑到我们的光电管经过比较器输出以后的频率最大为500Hz,那么我们设计一个‐3dB在500Hz左右的滤波器即可。用MATLAB写个小程序。

  R = 1000;

  f = 0:0.01:1000;

  w = 2*pi*f;

  C1 = 0.001 * 10^-6;%%uF

  C2 = 0.01 * 10^-6;%% uF

  C3 = 0.1 * 10^-6;%% uF

  C4 = 1 * 10^-6;%% uF

  C5 = 0.3 * 10^-6;%% uF

  y1 = sqrt((1./(1+w.*w*R^2*C1^2)).^2 +

  ((w*R*C1)/(1+w.*w*R^2*C1^2)).^2);

  y2 = sqrt((1./(1+w.*w*R^2*C2^2)).^2 +

  ((w*R*C2)/(1+w.*w*R^2*C2^2)).^2);

  y3 = sqrt((1./(1+w.*w*R^2*C3^2)).^2 +

  ((w*R*C3)/(1+w.*w*R^2*C3^2)).^2);

  y4 = sqrt((1./(1+w.*w*R^2*C4^2)).^2 +

  ((w*R*C4)/(1+w.*w*R^2*C4^2)).^2);

  y5 = sqrt((1./(1+w.*w*R^2*C5^2)).^2 +

  ((w*R*C5)/(1+w.*w*R^2*C5^2)).^2);

  plot(f,y1,f,y2,f,y3,f,y4,f,y5);

  title(‘RC滤波器设计’);

  legend(‘0.001uF’,‘0.01uF’,‘0.1uF’,‘1uF’,‘0.3uF’);

  xlabel(‘频率/Hz’);

  ylabel(‘输出幅频/V’);

  在测试C的时候从1nF开始测试,得到下面的输出曲线,从图中我们可以看到,从0Hz到1000Hz,输出几乎都是1,不变,1nF的电容不符合我们的设计要求。再加大,测试104电容,104电容即0.1uF,得到的输出幅频特性曲线如下,显然不符合我们的设计要求,500Hz‐3dB处还差一点点,再加大10倍,测试1uF。



推荐阅读:

MEMS定时器取代RF设计中的石英晶体

FPGA芯片的SERDES接口电路设计

简述:基于DSP的机车蓄电池充电系统

基于CPLD的CCD驱动模块设计

基于C8051F350单片机的气体流量计检测仪硬件设计

220x90
相关资讯
晶振启动时间影响因素解析与优化方向

​晶振的启动时间,通常是指其通电后进入稳定振荡状态所需的时间。若启动时间过长,可从以下五个常见的影响因素方面进行优化。

解析RTC实时时钟芯片的工作原理

RTC(Real-Time Clock,实时时钟)芯片作为一种独立的专用计时器件,其核心功能包括提供稳定的日历时钟、在主电源断电后持续运行、支持定时中断以及输出高精度时间戳,为各类嵌入式系统提供可靠的时间基准。

无源晶振与有源晶振在MCU应用中的关联逻辑与选型指南

时钟系统是保障微控制器(MCU)稳定运行的核心,而晶振作为关键时钟源,主要分为无源晶振与有源晶振两种类型。下面将围绕工作原理、硬件接口、电气特性及其在MCU中的适配场景等维度,系统解析这两类晶振与MCU之间的关联逻辑。

VC-OCXO压控恒温晶振管脚功能定义解析

恒温晶振(Oven Controlled Crystal Oscillator,简称OCXO)是高精度频率源的核心组件,选用切型更优(如SC切、AT切高精度型)、封装应力极小的高Q值晶片,通过恒温槽的超精密控温,让晶振始终工作在零温度系数点,几乎消除温度引发的频率漂移。

晶振倍频干扰解决方案:从PCB布局优化到源头抑制与电路整改

晶振倍频干扰(即高次谐波辐射)是电磁兼容(EMC)设计中非常棘手的问题,通常表现为基频25MHz的5次、7次谐波(如125MHz、175MHz等)处辐射超标。该问题源于晶振输出方波信号包含丰富的高次谐波成分,若PCB布局不当,晶振及其走线极易构成高效辐射天线,导致电磁干扰增强。