一种模块化的伺服驱动器软件框架及其设计方法技术

技术编号:33124100 阅读:18 留言:0更新日期:2022-04-17 00:31
本发明专利技术公开了一种模块化的伺服驱动器软件框架及其设计方法,其中框架包括:通信模块,硬件模块负责完成驱动配置,虚拟模块负责协议帧的封装与解析;指令模块,硬件模块负责从通信模块处装载指令数据,虚拟模块负责使控制指令参与到系统环路运算中;控制器虚拟模块负责控制率的计算;传感器模块,硬件模块负责配置传感器的驱动,获取传感器数据并做预处理,虚拟模块用于负责从传感器硬件模块中获取数据;设备模块,虚拟模块负责获取控制率,硬件模块负责根据其硬件地址,将设备虚拟模块的控制率传输给实际设备。本发明专利技术基于5种基本模块,可根据实际需求搭配系统构建机制,能够适应不同环境不同结构设备的需求,可广泛应用于伺服控制系统技术领域。系统技术领域。系统技术领域。

【技术实现步骤摘要】
一种模块化的伺服驱动器软件框架及其设计方法


[0001]本专利技术涉及伺服控制系统
,尤其涉及一种模块化的伺服驱动器软件框架及其设计方法。

技术介绍

[0002]万物互联是如今科技发展的潮流,它是实时操作系统、实时通信和实时控制优化算法等多种基础性技术的交叉点。面对多样化的设备,以往各自制定嵌入式实现框架的方案会大大限制了万物互联的进程。同时随着现代工业的不断发展,越来越多的社会生产趋于集成化、自动化,工业互联网应运而生。而工业互联网的形成需要各种各样的标准。在高档数控机床和机器人领域中,要求在汽车、机械、电子轻工等工业化设备和医疗健康、家庭服务等服务机器人应用领域中促进设备标准化、模块化发展,而在新一代信息
中,更是要求促进涉及到的相关工业软件的自主研发。
[0003]不同的工业生产中用到的工业设备自然不同,每一套工业设备都需要有专门的控制系统去实现其功能。而如此多不同的设备则需要搭建多种控制系统,这为系统开发者带来了麻烦,也给社会生产工业化进程带来了阻力。同时,随着一些工业生产线的规模日趋庞大与复杂(如多轴控制系统),控制系统的底层嵌入式开发则会出现代码冗杂、重复利用率低、拓展性差、后期维护困难等问题。

技术实现思路

[0004]为至少一定程度上解决现有技术中存在的技术问题之一,本专利技术的目的在于提供一种模块化的伺服驱动器软件框架及其设计方法。
[0005]本专利技术所采用的技术方案是:
[0006]一种模块化的伺服驱动器软件框架,包括5种基本模块:
[0007]通信模块,包括通信硬件模块和通信虚拟模块,所述通信硬件模块负责完成不同通信方式的驱动配置,实现透明传输;所述通信虚拟模块负责协议帧的封装与解析;
[0008]指令模块,包括指令硬件模块和指令虚拟模块,所述指令硬件模块负责利用指令装载机制从所述通信模块处装载指令数据;所述指令虚拟模块负责通过指令循环机制使控制指令参与到系统环路运算中;
[0009]控制器模块,包括控制器虚拟模块,所述控制器虚拟模块负责控制率的计算;
[0010]传感器模块,包括传感器硬件模块和传感器虚拟模块,所述传感器硬件模块负责配置不同传感器的驱动,获取传感器数据并做预处理;所述传感器虚拟模块用于负责根据所述传感器虚拟模块的硬件地址,从具有相同硬件地址的传感器硬件模块中获取数据;
[0011]设备模块,包括设备硬件模块和设备虚拟模块,所述设备虚拟模块负责获取控制器计算获得的控制率;所述设备硬件模块负责根据所述设备硬件模块的硬件地址,将具有相同硬件地址的设备虚拟模块的控制率传输给实际设备。
[0012]进一步,所述不同通信方式包括但不限于UART通信方式、CAN总线通信方式以及
EtherCAT总线等通信方式;
[0013]所述协议帧的封装与解析,包括:
[0014]根据可拓展的协议帧格式封装需要发送的数据和解析接收到的协议帧;其中,所述协议帧格式包括但不限于地址、数据以及时间戳等内容。
[0015]进一步,根据可拓展的协议帧格式封装需要发送的数据和解析接收到的协议帧,包括:
[0016]对总线上的协议帧进行解密操作,解密后获得的协议帧包含驱动器地址和模块地址;
[0017]驱动器接收到协议帧后,通过驱动器地址确定是否需要接收该协议帧;若确定需要接收,驱动器根据模块地址将解析完后的数据分发给不同的基本模块,从而实现总线上的数据交互;发送过程则相反。
[0018]进一步,在指令模块中,指令的形式包括预设的特殊指令和上位机实时产生的指令;指令循环机制用于使指令虚拟模块的输出处于停止状态、末位保持状态或者自动循环指令存储数组状态;
[0019]在控制器模块中,控制器由多个基本控制单元组成,以实现前馈控制结构、单环控制结构或者多环控制结构,满足不同控制需求的控制器设计。控制器可以采取多种实现方式,如FIR滤波器、差分方程、状态空间表达式等,因此本控制器可以实现任意的控制算法,如PID控制算法、LQR控制算法、H∞控制算法等。
[0020]本专利技术所采用的另一技术方案是:
[0021]如上所述的一种模块化的伺服驱动器软件框架的设计方法,包括以下步骤:
[0022]将底层代码分为硬件模块层和虚拟模块层,其中硬件模块层负责与底层硬件的数据交互,虚拟模块层负责系统各部分之间的数据交互、运算以及与上位机/通信总线的数据交互;
[0023]建立模块工作机制;
[0024]建立双地址绑定机制,实现硬件对算法的透明效果;
[0025]建立数据传输保障机制,用以保证数据传输的可靠性和安全性;
[0026]建立系统构建机制;
[0027]建立驱动器网络系统;
[0028]其中,所述硬件模块层包括通信硬件模块、指令硬件模块、传感器硬件模块和设备硬件模块,所述虚拟模块层包括通信虚拟模块、指令虚拟模块、控制器虚拟模块、传感器虚拟模块和设备虚拟模块。
[0029]进一步,所述建立模块工作机制,包括:
[0030]通过虚拟模块的选中、启用、上传3种标志位来使能对应的基本模块的选中、启用、上传功能;
[0031]基于基本模块的输入输出管理功能,基本模块可接收单个或多个信号同时输入,同时输出单个或多个信号。
[0032]进一步,所述建立双地址绑定机制,包括:
[0033]根据因不同需求而配置的双地址绑定表,伺服驱动器的虚拟模块可获得对应的实际硬件的硬件地址,从而实现跟不同硬件模块的绑定;
[0034]绑定后,硬件模块可按需配置不同硬件的驱动,也可对获取的数据进行预处理。
[0035]进一步,所述数据传输保障机制包括校验和加强网络安全两种措施;
[0036]所述校验采用三巡校验机制:上位机与伺服驱动器间对重要通信数据进行往复三次的校验,伺服驱动器才能进行正常的数据运算;
[0037]所述加强网络安全通过加密方式来实施。
[0038]进一步,所述建立系统构建机制,包括:
[0039]根据不同设备的不同需求,组合5种基本模块来构建一个控制系统;
[0040]通过相应模块的标志位去设置上位机与伺服驱动器之间通信方式的选择、传感器数据获取方式的选择以及设备控制量传输方式的选择,从而构建出不同需求下的系统。
[0041]进一步,所述建立驱动器网络系统,包括:
[0042]构建完成单个驱动器系统后,将通信总线上的多个驱动器系统连接起来,组成一个多机通信的系统;
[0043]其中,所述多机通信的系统中每个驱动器之间可以进行通信,驱动器与上位机之间也可以进行通信。
[0044]本专利技术的有益效果是:本专利技术基于5种基本模块,可根据实际系统结构需要(尤其是多轴控制系统)自由组合,搭配独特的系统构建机制,能够适应不同环境不同结构设备的需求,提高伺服驱动器的利用率。
附图说明
[0045]为了更清楚地说明本专利技术实施例或者现有技术本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种模块化的伺服驱动器软件框架,其特征在于,包括5种基本模块:通信模块,包括通信硬件模块和通信虚拟模块,所述通信硬件模块负责完成不同通信方式的驱动配置,实现透明传输;所述通信虚拟模块负责协议帧的封装与解析;指令模块,包括指令硬件模块和指令虚拟模块,所述指令硬件模块负责利用指令装载机制从所述通信模块处装载指令数据;所述指令虚拟模块负责通过指令循环机制使控制指令参与到系统环路运算中;控制器模块,包括控制器虚拟模块,所述控制器虚拟模块负责控制率的计算;传感器模块,包括传感器硬件模块和传感器虚拟模块,所述传感器硬件模块负责配置不同传感器的驱动,获取传感器数据并做预处理;所述传感器虚拟模块用于负责根据所述传感器虚拟模块的硬件地址,从具有相同硬件地址的传感器硬件模块中获取数据;设备模块,包括设备硬件模块和设备虚拟模块,所述设备虚拟模块负责获取控制器计算获得的控制率;所述设备硬件模块负责根据所述设备硬件模块的硬件地址,将具有相同硬件地址的设备虚拟模块的控制率传输给实际设备。2.根据权利要求1所述的一种模块化的伺服驱动器软件框架,其特征在于,所述不同通信方式包括UART通信方式、CAN总线通信方式以及EtherCAT总线通信方式;所述协议帧的封装与解析,包括:根据可拓展的协议帧格式封装需要发送的数据和解析接收到的协议帧;其中,所述协议帧格式包括地址、数据以及时间戳。3.根据权利要求2所述的一种模块化的伺服驱动器软件框架,其特征在于,所述根据可拓展的协议帧格式封装需要发送的数据和解析接收到的协议帧,包括:对总线上的协议帧进行解密操作,解密后获得的协议帧包含驱动器地址和模块地址;驱动器接收到协议帧后,通过驱动器地址确定是否需要接收该协议帧;若确定需要接收,驱动器根据模块地址将解析完后的数据分发给不同的基本模块,从而实现总线上的数据交互。4.根据权利要求1所述的一种模块化的伺服驱动器软件框架,其特征在于,在指令模块中,指令的形式包括预设的特殊指令和上位机实时产生的指令;指令循环机制用于使指令虚拟模块的输出处于停止状态、末位保持状态或者自动循环指令存储数组状态;在控制器模块中,控制器由多个基本控制单元组成,以实现前馈控制结构、单环控制结构或者多环控制结构,满足不同控制需求的控制器设计。5.如权利要求1

【专利技术属性】
技术研发人员:李锦辉苏为洲闻成
申请(专利权)人:华南理工大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1