自动控制技术-永磁同步电机控制系统的串行通信实现.docxVIP

自动控制技术-永磁同步电机控制系统的串行通信实现.docx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
自动控制技术-永磁同步电机控制系统的串行通信实现

永磁同步电机控制系统的串行通信实现在开发一套以DSP为核心的永磁同步电机控制系统时,需要及时观察驱动系统中的各个变量,同时还要对一些程序进行控制,修改特定参数。DSP在实际运行中不能用外接的端口进行控制,需要用DSP自带的串行通信模块来解决这一问题。通过一台上位计算机和以DSP为核心的电机控制系统构成整个监控系统,Pc机通过串口来改变DSP程序中转矩、磁链给定,以及调节PI参数等,电机控制系统完成对电机的控制,并采集相关数据反馈到Pc机中进行分析、处理、显示和存储。本文以DSP控制永磁同步电机为例,介绍在整个控制系统中串行通信的实现。1 永磁同步电机控制系统  永磁同步电机控制系统框图如图1所示,采用直接转矩控制方法,这是19世纪80年代提出的交流电机高性能控制策略。本控制系统是一个速度和转矩的双闭环控制系统。系统利用电压、电流传感器检测直流母线电压Vdc。及定子二相电流i 和i ,通过坐标变换将定子三相坐标系中的电压、电流变量转换为α-β静止定子坐标系中的二相分量。将由磁链及转矩观测器得到的定子磁链、转矩实际值作为反馈量,与磁链、转矩给定值进行比较,所得到的误差信号通过磁链、转矩调节器的滞环控制单元后,获得0、1控制信号,再综合考虑当前定子磁链所在的区域,选择适当的电压空问矢量控制定子磁链的旋转速度及方向,即可直接快速地实现转矩调节。  ?  如果试验人员能够及时地观测并调节转矩、磁链、电压、电流等控制参数,将会极大地提高电机控制系统的开发效率。2 串行通信的实现  PC机与DSP串行通信的实现包括三个部分,即硬件设计、上位机程序设计、下位机程序设计。2.1 串行通信硬件设计  从本试验平台实际需要考虑,采用RS-232实现PC机与DSP的数据传输。现在RS。232的通信端口是每台计算机上的必要配置,通常含有COM1和 COM2两个端口,所以能很方便地把上位机与下位机连接起来,实现计算机对生产现场的监测和控制。图2是TMS320LF2407串行通信接1:1电路 [1]。该电路采用了符合RS-232标准的驱动芯片MAX232进行串行通信。MAX232芯片功耗低,集成度高,+5 V供电,具有2个接收和发送通道。由于TMS320LF2407采用+3.3 V供电,需要将5 V的1tI1L电平变换为3.3 V高电平,整个接口电路简单,可靠性高。  ?2.2 上位机程序设计  Delphi是一种面向对象的可视化编程工具,拥有功能强大的集成开发环境和速度极快的编译器,兼具Visual C++的强大功能和VB易学易用的特点。通过安装MSComm控件,可在Delphi环境下方便地实现串行通信[2]。MSComm提供了两种处理通信问题的方法:一种是事件驱动法,一种是查询法。本系统选用事件驱动法,该方法程序响应及时,可靠性高。只要了解使用MSComm的属性及事件的用法就可以实现对串口的操作。  其主要属性有 :  (1)eommport属性,用于设置并返回连接的串行端口号;  (2)settings属性,以字符形式设置并返回串口的波特率、奇偶校验、数据位、停止位参数;  (3)po~open属性,用于设置或返回通信连接端口的状态;  (4)input属性,用于从输入缓冲区返回并删除字符;  (5)output属性,用于将要发送的数据输入传输缓冲区;  (6)inputlen属性,用于指定由串行端I:I读入的字符串长度或字节数;  (7)handshaking属性,用于指定通信双方的握手协议;  (8)rthreshold属性,用于设置或返回引发接收事件的字节数;  (9)sthreshold属性,用于设置并返回传输缓冲区中允许的最小字符数;  (10)commevent属性,在通信错误或事件发生时都会产生oncomm事件;  (11)inbufercount属性,用于接收缓冲区中的字符数;  (12)inputmode属性,用于设置或返回input属性取回数据的类型。  程序设计中首先要对MSComm进行初始化,可以双击MSComm控件设置,也可以在程序中修改。  本系统根据需要自行设计了通信协议。  (1)帧分为两类,即控制帧和数据帧。控制帧为上位机发出的控制命令,数据帧为上、下位机的实时数据。  (2)上位机对下位机通信中的控制帧,格式都是一个字节,定义如下:AA为下位机发送数据;AB为下位机接收数据;AC为下位机停止发送  (3)数据帧为两个字节,数据范围是0~65535,满足了数据要求。  例如,把电机磁链设置为200,该通信命令由4个字节组成,数据格式为AB0400C8。其中:AB为控制帧,04代表磁链,00C8为数据帧。每个字节包含1个起始位、1个停止位、8个数据位,这些都是隐藏在底层程序中的,在实际应用中用户只需在通信界面上设置磁链

文档评论(0)

shenlan118 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档