欢迎来到天天文库
浏览记录
ID:10299327
大小:56.50 KB
页数:4页
时间:2018-07-06
《基于vc++串行通信的无刷直流电机监控系统的论文》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、基于VC++串行通信的无刷直流电机监控系统的论文原文作者:刘娜 摘要:本文重点介绍了基于pc机和msp430单片机串行通信的具体实现过程。硬件部分解决了通信电平不一致的问题,软件部分给出了pc机和单片机的通信程序,解决了通信过程中数据传输的格式问题。实验结果表明,该方案操作性强,能成功运用于电机的监控系统。 关键词:无刷直流电机vc++msp430串行通信 1、引言 [1]无刷直流电机调速性能好,利用单片机msp430专门的p功能、丰富的i/o口、快速运算等优点,实现对无刷直流电机的逻辑控制,由于作为下位机的人机交互性不强,难以
2、对电机运行时的关键信息有效处理,本文通过编写vc++上位机程序,采用pc机和单片机串行通信的主从式结构,实现了对电机的监控。 2、电机原理及系统硬件组成 2.1无刷直流电机运行原理 无刷直流电机的电力电子开关代替有刷电机的换向片,减少了机械磨损及因换向产生的一些危险,系统由电动机本体、位置检测器、逆变器和控制器组成[2]。 电机本体同轴上的位置传感器,根据转子的不同位置,发出逻辑信号,根据实验所得的逻辑表,控制输出回路发出的信号,经mosfet驱动放大,控制电机电枢电流的导通,以实现“换向”。 2.2下位机控制系统硬件构成
3、下位机以msp430系列的f2274单片机为控制核心,通过检测电机转子信号,单片机i/o口发出相应逻辑信号,与控制转速的p信号相“与”,经信号隔离,到电机专用驱动芯片ir2130中,继而导通桥式电路,实现mosfet的导通。. 同时,msp430单片机的捕获比较模块,捕获三相传感器信号输入的时间,本文试验采用的无刷直流电机为一个机械周期(20个电周期),通过计算得到电机的转速公式为[3]: ; 表示检测到第一次位置信号时的时钟数,表示检测到第二次位置信号时的时钟数,为定时器的时钟主频,*3则表示转过一个电周期所用的时间。通过串行通
4、信,可将转速、电压、电流这些参数传至上位机。 2.3串行通信的硬件实现 本文采用异步通信模式[4],设定好波特率及数据位和停止位的个数;将pc机的rxd脚与下位机的txd相连,并共地;利用max232芯片实现电压转换,即通过串口线连到pc机上,加上5个1的电容把rs232电平转化为标准ttl电平,再用两个电阻分压,以达到msp430单片机的电压标准。 3、串行通信软件设计 3.1上位机串行通信设计 [5]本文上位机通信模块采用mfc的编程方式,界面如图1所示。加入msm控件,自动生成cmsm的类,访问其内部函数,可对pc机串行
5、通信进行控制。 在上位机进行通信之前,在msm中,设置通信参数,程序在界面上采用可视化的串口设置方式,提高了软件的通用性和移植性。[] setting=m_botelv+","; if(m_testbit=="none") parity="n"; elseif(m_testbit=="odd") parity="o"; elseif(m_testbit=="even") parity="e"; elseif(m_testbit=="mark") parity="m"; elseif(m_testbit=="spac
6、e") parity="s"; setting+=parity+","; setting+=m_sbitbit+","; setting+=m_stopbit; if(m_kou=="1") m_.setmport(1); elseif(m_kou=="2") m_.setmport(2); m_.setsettings(setting); m_.setinputmode(1);//1:表示以二进制方式检取数据 m_.setrthreshold(1);//为1表示有一个字符引发一个事件 m_.setsthresh
7、old(1);//参数1表示每当串口接收缓冲区中有 //多于或等于1个字符时将引发一个接收数据的onm事件 m_.setinputlen(0);//设置当前接收区数据长度为0 在查询到mevent的值等于2时,表明接收缓存里有了数据。数据是variant型的,首先转化为colesafearray形式,然后再将数组元素分离转化为byte型数组,最后再将byte里的字符转化为数字。当上位机按下按钮发送数据时,也应通过函数colevariant()进行强制类型转换,以varint的形式传送出去。 当下位机将电机转速的数据上传后,本软件
8、加入了图形显示和数据存储功能。在绘图子对话框中,首先通过getparent函数调用父对话框指针,将父对话框中的数值传进子对话框,然后通过定时器,以一定频率绘制网格线并将传进来的数据点在图上显示。再次更新时,
此文档下载收益归作者所有