APP下载

可重构伺服驱动调试工具的设计与实现*

2013-09-12王志成

组合机床与自动化加工技术 2013年7期
关键词:驱动器字节串口

柴 宇,栾 勇,王志成

(中国科学院沈阳计算技术研究所,沈阳 110168)

0 引言

伺服系统是数控机床最重要的组成部分之一,其动态特性对数控机床的加工精度有重要的影响[1]。在传统的伺服系统中,控制软件被固化在伺服驱动中,已开发完成的应用,基本不可能再做更改,随着用户需求的不断变化,不能够灵活的进行升级更新。

为解决上述传统伺服驱动的问题,组件技术被引入到了伺服驱动的设计当中。采用基于组件[2]的软件设计技术,可以成功构建一种可重构的软件系统,各个模块对象可以根据不同的需求组合在一起,并且当对某模块的需求发生变化时,只需要修改此软件模块,而不用对整个软件系统进行大量的重新设计。提高了系统的灵活性、可维护性,更加适应了需求的快速发展[3]。

可重构伺服驱动[4]的出现对调试工具提出了新的要求,其不再只需完成传送参数等功能,而需要对伺服的各个模块对象进行管理、操作,并要求操作更加人性化、智能化。同时需要将控制参数备份到硬盘上,以供以后恢复系统或调试其它相同配置的系统使用。基于此调试工具的这些特点,它容易被广大调试人员掌握,能有效地提高伺服驱动器的特性,从而提高数控机床的加工精度。

1 整体结构设计

根据可重构伺服驱动器的需求,本设计具体包括通信协议的设计、驱动层的设计及调试工具的设计。

(1)驱动层:PC机与可重构伺服驱动器通过USB线进行连接,驱动层创建串口对象,实现上位机与伺服驱动的串口连接。

(2)通信协议:在PC机与伺服之间传送的各帧,

都必须按照统一的格式发送,并且在接收到数据后按照固定的格式进行解析,高效的通信协议的制定,能够保证上位机与伺服驱动之间高效、稳定的数据传输。

(3)调试工具:能够对伺服驱动的各个模块对象进行管理、操作,本设计为方便用户使用,将各个模块对象图形化,使用户可以不需要理解某些复杂参数的含义,直接对图形进行操作,使操作更加人性化、智能化。同时可以将控制参数备份到硬盘上,以供以后恢复系统或调试其它相同配置的系统时使用。

整体结构设计如图1所示。

图1 整体结构设计

2 驱动层与通信协议的设计

上位机与伺服驱动器通过串口进行连接,具体实现方式为上位机与伺服驱动器通过USB线连接,在上位机上安装USB转串口的程序[5],实现二者之间的串口连接。图2为上位机与伺服驱动器连接通信的示意图。

图2 上位机与伺服驱动器通信图

调试工具通过串口与伺服进行通信[6],驱动层需要创建串口对象,C#中的Serial Port类为串口的实现提供了良好的支持,可以方便的创建串口,初始化串口,对串口的各属性,如波特率、奇偶校验位、停止位等进行设置。图3为串口属性设置界面,用户可以根据需求,对串口号、波特率、数据位、停止位、校验位进行设置,从而生成不同的串口对象。

图3 串口属性设置界面

通信协议按照工业标准MODBUS协议标准[7]进行设计。通信帧包括起始字节、数据长度、指令码、数据内容、校验码、结束字节等字段,具备较好的扩展性,通信帧的各字节含义如表1所示。上位机发送的命令帧以及数据帧采用协议规定的统一格式发送,起止字节均是一个字节AAH,帧中的第二个字节表示通信地址,占用一字节,紧接着的一个字节表示整个帧的长度。不同类型的指令由指令码标示,占用一字节,紧接着的n个字节表示不同指令码的数据部分,具体内容以及n的大小由各类型指令的不同内容决定,不同类型的指令格式以及指令对应的应答帧格式也需事先约定好。本节所实现的协议采用16位的CRC冗余校验方法[8],校验范围包括除起止字节以及结束码以外的所有帧字节,最后是结束码。

表1 通信帧格式

3 调试工具的设计

调试工具主要包括类库和对象库管理、参数管理、调试、文件管理四部分。本软件采用C#语言进行开发,图4为调试工具的主界面。

图4 调试工具的主界面

3.1 类库及对象库的设计

根据可重构伺服驱动器的特点,要求调试软件能够建立类库,其中类具有类版本号、输入引脚数、输出引脚数、一类参数个数、二类参数个数、三类参数个数等属性,用户可以输入这些属性值来创建类。

可针对每个类生成不同对象号的对象。可重构伺服驱动器平台以组件的思想进行设计,可以创建多个组件对象,对象之间利用参数进行互连,从而实现整个系统的可重构。每个对象都对应一个唯一ID号,范围为1~255,分为系统对象和通用对象两类。在调试软件中,对象库中对象的创建具有两种方式。一种是,通过类来实例生成,输入对象的对象号,即可通过类生成该对象,该对象就具备了此类的版本号、输入输出引脚数、各类参数个数等属性值。另一种方式是通过向伺服驱动器发送查询命令,对1-255这255个对象号依次进行查询,判断伺服驱动器中是否具有该对象号的对象,从而获取伺服中的各对象,实现对象库的更新,也保证了对象库中的对象与伺服中对象的一致性。

3.2 参数管理

对象含有 p1、p2、p3、pi、po 五类参数,软件提供了对各类参数进行设置初值的功能,并可通过向伺服传递命令参数,对各类参数进行上载及下载,并可以选择将参数保存在伺服EEPROM或本地文件中。图5为参数管理的界面。用户可以向伺服发送参数读取指令,读取该对象的参数,显示到对象的属性表中,也可向伺服发送参数写指令,将属性表中的各参数,传输到伺服对象当中去。

图5 参数表

3.3 电机控制

电机控制包括对伺服电机的复位、上电、下电、速度JOG等操作。调试软件通过串口向伺服传递各命令参数,伺服按照通信协议进行解析,从而实现上述各操作。

图6为速度JOG操作界面。选用的伺服驱动电机为沈阳高精数控公司生产的永磁同步电机,具体实物连接如图7所示。手动部分用户可以设定手动速度,当一直按下“+”时,电机将实现以设定速度正转,当一直按下“-”时,电机将实现以设定速度反转,当鼠标抬起时,电机停转。自动部分可以输入转动时间及每分钟转数,点击开始后电机即可按照输入数据转动。同时在界面中显示当前速度、当前位置信息,并提供异常报警显示。

图6 速度JOG操作界面

图7 调试工具的实物仿真图

3.4 文件管理

文件管理包括类库文件、对象库文件及配置文件的创建及保存[9]。对于文件的存储,采取XML技术。将每个类库、对象库、配置信息分别存储成一个XML文件[10],可以使用该软件打开 xml文件,从而打开相应的类库、对象库及配置信息。其中配置信息的存储包括对工作区中的调试操作记录的保存,例如各对象的连接关系,各参数值等,都将被存储到XML文件中,以方便以后调用。对于相同配置的伺服驱动器,可通过拷贝、打开已有的类库、对象库、及配置文件,就可以快速获得相应的类库、对象库的信息、数据,以及之前的操作记录等,用户可以在打开的操作记录的基础上,继续进行操作、调试,使调试工作更加快速、便捷,实现了伺服的快速调试。

4 总结

本文针对可重构伺服驱动器的特点,对其相应的调试工具进行了设计与实现,能够对伺服驱动的各个模块对象进行管理、操作,并将各个模块对象图形化,使用户可以不需理解某些复杂参数的含义,直接对图形进行操作,同时可以将控制参数备份到硬盘上,使用户能够对伺服驱动器进行快速、方便的调试,容易被广大调试人员掌握,有一定的应用价值。

[1]杨国栋,何红欣.数控机床伺服调整在机床调试中的重要性[J].制造技术与机床,2010(5):132-135.

[2]Shi Jiyuan.Software Reuse and component technology[J].Third International Symposium on Information Processing.2010:499-501.

[3]杜少华,于东,胡毅,等.组件技术在开放式控制系统中的研究[J].小型微型计算机系统,2009(4):623-627.

[4]陈桂.开放式可重构伺服系统研究与设计[J].现代雷达,2011,33(11):66 -69.

[5]张克非.Windows环境下的USB设备驱动程序设计[J].计算机与现代化,2004(7):5-8.

[6]夏罗生,朱树红.西门子交流伺服驱动器性能的调试与优化[J].机床电器,2011(5):19-21.

[7]李叶松,黄恒,尹泉.应用MODBUS协议的交流伺服系统通讯功能设计[J].电气传动和自动控制,2004,26(1):24-26.

[8]朱小超,徐雪春.基于Modbus协议的上位机与单片机通信的实现与仿真[J].仪表技术与传感器,2011(6):65-68.

[9]刘洋,胡育文,黄文新,等.交流伺服系统调试软件设计[J].伺服控制,2008(1):60-63.

[10]王洪,龙文星.XML存储模型研究[J].科技广场,2010(1):70-72.

猜你喜欢

驱动器字节串口
No.8 字节跳动将推出独立出口电商APP
基于NPORT的地面综合气象观测系统通信测试方法及故障处理
气动网络多腔室弯曲软体驱动器结构优化
浅谈AB PLC串口跟RFID传感器的通讯应用
藏起驱动器号确保数据安全
基于EM9000工控板高性能双串口通信模型设计与实现
No.10 “字节跳动手机”要来了?
轻量级分组密码Midori64的积分攻击
空间大载荷石蜡驱动器研制
船舶电子设备串口数据的软件共享方法