CN108983640B - 一种基于LabVIEW的电动直线舵机控制系统及方法 - Google Patents
一种基于LabVIEW的电动直线舵机控制系统及方法 Download PDFInfo
- Publication number
- CN108983640B CN108983640B CN201810674701.1A CN201810674701A CN108983640B CN 108983640 B CN108983640 B CN 108983640B CN 201810674701 A CN201810674701 A CN 201810674701A CN 108983640 B CN108983640 B CN 108983640B
- Authority
- CN
- China
- Prior art keywords
- steering engine
- array
- data
- control
- converting
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Combined Controls Of Internal Combustion Engines (AREA)
Abstract
本发明公开了一种基于LabVIEW的电动直线舵机控制系统及方法。该系统包括上位机PC、PXI机箱、NI实时控制器、RS485通信卡、舵机驱动器、直线舵机和辅助电源,上位机PC包括串口通信模块、参数设置模块、数据输入与读取模块、数据处理和显示模块;直线舵机包括直流电机、齿轮减速器、滚柱丝杠和电位计;辅助电源为舵机驱动器和直线舵机提供不同电压。控制方法为:首先开启装有LabVIEW的上位机与下位机PXI机箱,开启舵机电机与辅助电源;然后进行上位机程序串口初始化,并设置舵机运动形式;接着进行舵机指令的发送和读取;最后进行界面的实时显示。本发明控制系统程序简单、操作方便,具有较好的稳定性和人机交互性,可以高效的实现对舵机位置控制和实时检测。
Description
技术领域
本发明属于导弹制导控制领域,特别是一种基于LabVIEW的电动直线舵机控制系统及方法。
背景技术
随着伺服技术的发展,出现了一类控制精度高、响应速度快、结构尺寸小的微型伺服机构,又被称作舵机。舵机一般应用于导弹系统的调姿和变轨,也应用于各种航天器运行位姿的精确调整,具有较大的发展前景。目前,国内在研的舵机大多为旋转舵机,但随着高精密传动机构的发展,一种新型的直线舵机应运而生,主要由直流电机、齿轮减速器、高精度滚珠丝杠和电位计组成,它可以将直流电机产生的扭矩力转化为直线力,在实际运用中具有很大的灵活性。
直线舵机属于大功率舵机,其工作原理为舵机驱动器接收主控计算机给出的舵机位移指令,从而驱动直流电机产生旋转扭矩,经齿轮减速和滚珠丝杠转化为直线运动。为检测直线舵机是否具有较强的快速响应能力和高精度的目标跟踪能力,需要进行控制和机械性能测试,但是目前电动直线舵机控制系统多采用单片机、DSP等设备来控制,往往存在人机界面不友好的问题,且难以进行实时数据发送、读取以及处理显示,阻碍了舵机模拟加载测试系统的发展。
发明内容
本发明的目的在于提供一种具有友好人机界面的基于LabVIEW的电动直线舵机控制系统及方法,并能够进行数据读取处理和界面显示。
实现本发明目的的技术解决方案为:一种基于LabVIEW的电动直线舵机控制系统,包括上位机PC、PXI机箱、NI实时控制器、RS485通信卡、舵机驱动器、直线舵机和辅助电源,其中:
所述上位机PC通过TCP/IP总线接入PXI机箱,上位机PC的软件部分基于LabVIEW平台开发,包括串口通信模块、参数设置模块、数据输入与读取模块、数据处理和显示模块;
所述PXI机箱上设有NI实时控制器、RS485通信卡,RS485通信卡与舵机驱动器连接;
所述舵机驱动器接入直线舵机,所述直线舵机包括直流电机、齿轮减速器、滚柱丝杠和电位计;
所述辅助电源为舵机驱动器和直线舵机提供不同电压。
进一步地,所述的数据处理和显示模块,进行舵机控制指令的处理与生成,舵机自检返回指令的分析与计算,并将舵机的运行状态与位移-时间实时数据显示在LabVIEW人机交互界面上。
一种基于LabVIEW的电动直线舵机控制方法,舵机的运动方式分为阶跃运动和正弦运动两种,包括以下步骤:
步骤1、开启装有Labview的上位机与下位机PXI机箱;
步骤2、开启舵机电机与辅助电源;
步骤3、上位机程序串口初始化;
步骤4、设置舵机运动形式;
步骤5、舵机指令的生成、发送和读取;
步骤6、通过上位机界面的实时显示,监控舵机的运动过程。
进一步地,步骤5所述的舵机指令的生成,具体如下:
(1)通过“VISA配置串口”配置串口相应的波特率、传输数据位;
(2)由上到下构建启动、位移与停止三个布尔量输入控件,将输入的三个布尔量转化为布尔数组,然后转化为十进制数值,并构建“条件结构”,根据按下相应的按钮后转化的十进制数字,选择对应的舵机执行功能;
(3)建立“定时循环”,使整个输入程序实时运行,“定时循环”结构设定为1ms循环一次;
(4)建立“加载信号设置”控件,并构建“条件结构”,可以选择阶跃信号运行模式或正弦信号运行模式;
(5)给定阶跃信号与正弦信号时,通过定时循环结构,将“循环计数”与常量使用“乘”控件,并连接“正弦波”控件,生成时间间隔为1ms的逐点正弦波;
(6)将所采样得到的位移数值转换为相应位置控制指令。
进一步地,步骤(6)所述的将所采样得到的位移数值转换为相应位置控制指令,具体如下:
根据直线舵机所接受的固定字符串格式,将字符串指令格式规定为07A3DATALLDATALH DATAHL DATAHH CRC,CRC=03+DATALL+DATALH+DATAHL+DATAHH;数据处理方法为:
首先将采样位置数值利用“乘”控件将数值放大100倍,并利用“转换为长整型”控件将其转换为32位长整型数据,然后利用“强制类型转换”控件转化为字符串并将其转化为一维数组,该一维数组包含四个元素,每个元素为八位,然后根据给出的舵机控制指令格式,采用“数组索引”提取数组中最后2个元素,并且使用“创建数组指令”将原数组中最后2个元素与2个零合并为新的数组,此数组就包含全部的控制舵机位移的信息;再引用“FOR循环”结构,使新数组的4个元素相加;接着使输出的数值再加3并输出CRC的值;最后,使用“创建数组”控件将07、A3、新数组、CRC组成最终的数组,并转化为所需的字符串指令格式。
进一步地,步骤5中所述的舵机指令的读取,具体如下:
(1)使用“属性节点”来不断监测端口是否有数据返回;
(2)建立“条件结构”,“属性节点”的Bytes at port端口连接“不等于零“后连接至“条件结构”的选择端口,当端口处的数据不为零时,则读取端口数据;
(3)读取舵机驱动器串口数据并进行截取有效部分数据,具体如下:根据舵机的返回指令格式,舵机不断循环返回12字节的字符串,其格式为55 00 00 DATA0 DATA1 DATA2DATA3 DATA4 DATA5 DATA6 DATA7 CRC,每个数据为16进制,每个数据为8位,其中CRC=DATA0+DATA1+DATA2+DATA3+DATA4+DATA5+DATA6+DATA7,CRC用于校验返回的数据是否正确,使用“VISA读取”控件读取舵机驱动器连续返回的24个字节的字符串;
(4)从截取的24字节的字符串中提取舵机所规定的12位反馈指令格式的数据;
(5)将标准的12位字符串指令进行数据处理,并进行显示。
进一步地,步骤(4)中所述的,从截取的24字节的字符串中提取舵机所规定的12位反馈指令格式的数据,具体如下:
(1)将截取到的24字节字符串数据使用“字符串至字节数组转换”控件转换为一维数组,并且创建“While”循环,使程序不断循环运行;
(2)采用“搜索一维数组”控件搜索十六进制数值55,并且在“搜索一维数组”后创建“条件结构”,搜索到55后将元素索引端口值加1并连接至“索引数组控件”,同时将55后面11个元素提取出来;
(3)根据所控制舵机给出的数据校检方式,构建“条件结构”来判断是否使用该组数据;
(4)将索引到的12个元素使用“创建数组”创建为新的数组,并使用“字符串至字节数组转换”转为字符串格式。
进一步地,步骤(5)所述的,将标准的12位字符串指令进行数据处理,并进行显示,具体如下:
(1)将标准的12位字符串指令转化为数组,并使用“索引数组”控件提取DATA4与DATA3,该两位元素包含舵机当前位移信息;
(2)使用“创建数组”将0 0 DATA4 DATA3创建为新数组,并将其转化为双精度浮点数;
(3)使用“减”控件减去65535,再使用“除”控件除以100,输出对应实际位移值。
本发明与现有技术相比,其显著优点为:(1)程序简单,操作方便,具有较好的稳定性和人机交互性,可以高效的实现对舵机位置控制和实时检测;(2)为舵机模拟加载测试系统提供了一种良好的控制方案,可广泛运用于同型舵机的控制系统中。
附图说明
图1为本发明基于LabVIEW的电动直线舵机控制系统的结构示意图。
图2为本发明基于LabVIEW的电动直线舵机控制系统的运行流程图。
图3为本发明基于LabVIEW的电动直线舵机控制系统的舵机指令图。
图4为本发明的输入程序数据处理程序图。
图5为本发明的读取程序图。
图6为本发明的读取程序12字节字符串截取程序图。
图7为本发明的读取程序位移信息数据处理程序图。
具体实施方式
一种基于LabVIEW的电动直线舵机控制系统,包括上位机PC、PXI机箱、NI实时控制器、RS485通信卡、舵机驱动器、直线舵机和辅助电源,其中:
所述上位机PC通过TCP/IP总线接入PXI机箱,上位机PC的软件部分基于LabVIEW平台开发,包括串口通信模块、参数设置模块、数据输入与读取模块、数据处理和显示模块;
所述PXI机箱上设有NI实时控制器、RS485通信卡,RS485通信卡与舵机驱动器连接;
所述舵机驱动器接入直线舵机,所述直线舵机包括直流电机、齿轮减速器、滚柱丝杠和电位计;
所述辅助电源为舵机驱动器和直线舵机提供不同电压。
进一步地,所述的数据处理和显示模块,进行舵机控制指令的处理与生成,舵机自检返回指令的分析与计算,并将舵机的运行状态与位移-时间实时数据显示在LabVIEW人机交互界面上。
一种基于LabVIEW的电动直线舵机控制方法,舵机的运动方式分为阶跃运动和正弦运动两种,包括以下步骤:
步骤1、开启装有LabVIEW的上位机与下位机PXI机箱;
步骤2、开启舵机电机与辅助电源;
步骤3、上位机程序串口初始化;
步骤4、设置舵机运动形式;
步骤5、舵机指令的生成、发送和读取;
步骤6、通过上位机界面的实时显示,监控舵机的运动过程。
进一步地,步骤5所述的舵机指令的生成,具体如下:
(1)通过“VISA配置串口”配置串口相应的波特率、传输数据位;
(2)由上到下构建启动、位移与停止三个布尔量输入控件,将输入的三个布尔量转化为布尔数组,然后转化为十进制数值,并构建“条件结构”,根据按下相应的按钮后转化的十进制数字,选择对应的舵机执行功能;
(3)建立“定时循环”,使整个输入程序实时运行,“定时循环”结构设定为1ms循环一次;
(4)建立“加载信号设置”控件,并构建“条件结构”,可以选择阶跃信号运行模式或正弦信号运行模式;
(5)给定阶跃信号与正弦信号时,通过定时循环结构,将“循环计数”与常量使用“乘”控件,并连接“正弦波”控件,生成时间间隔为1ms的逐点正弦波;
(6)将所采样得到的位移数值转换为相应位置控制指令。
进一步地,步骤(6)所述的将所采样得到的位移数值转换为相应位置控制指令,具体如下:
根据直线舵机所接受的固定字符串格式,将字符串指令格式规定为07 A3 DATALLDATALH DATAHL DATAHH CRC,CRC=03+DATALL+DATALH+DATAHL+DATAHH;数据处理方法为:
首先将采样位置数值利用“乘”控件将数值放大100倍,并利用“转换为长整型”控件将其转换为32位长整型数据,然后利用“强制类型转换”控件转化为字符串并将其转化为一维数组,该一维数组包含四个元素,每个元素为八位,然后根据给出的舵机控制指令格式,采用“数组索引”提取数组中最后2个元素,并且使用“创建数组指令”将原数组中最后2个元素与2个零合并为新的数组,此数组就包含全部的控制舵机位移的信息;再引用“FOR循环”结构,使新数组的4个元素相加;接着使输出的数值再加3并输出CRC的值;最后,使用“创建数组”控件将07、A3、新数组、CRC组成最终的数组,并转化为所需的字符串指令格式。
进一步地,步骤5中所述的舵机指令的读取,具体如下:
(1)使用“属性节点”来不断监测端口是否有数据返回;
(2)建立“条件结构”,“属性节点”的Bytes at port端口连接“不等于零“后连接至“条件结构”的选择端口,当端口处的数据不为零时,则读取端口数据;
(3)读取舵机驱动器串口数据并进行截取有效部分数据,具体如下:根据舵机的返回指令格式,舵机不断循环返回12字节的字符串,其格式为55 00 00 DATA0 DATA1 DATA2DATA3 DATA4 DATA5 DATA6 DATA7 CRC,每个数据为16进制,每个数据为8位,其中CRC=DATA0+DATA1+DATA2+DATA3+DATA4+DATA5+DATA6+DATA7,CRC用于校验返回的数据是否正确,使用“VISA读取”控件读取舵机驱动器连续返回的24个字节的字符串;
(4)从截取的24字节的字符串中提取舵机所规定的12位反馈指令格式的数据;
(5)将标准的12位字符串指令进行数据处理,并进行显示。
进一步地,步骤(4)中所述的,从截取的24字节的字符串中提取舵机所规定的12位反馈指令格式的数据,具体如下:
(1)将截取到的24字节字符串数据使用“字符串至字节数组转换”控件转换为一维数组,并且创建“While”循环,使程序不断循环运行;
(2)采用“搜索一维数组”控件搜索十六进制数值55,并且在“搜索一维数组”后创建“条件结构”,搜索到55后将元素索引端口值加1并连接至“索引数组控件”,同时将55后面11个元素提取出来;
(3)根据所控制舵机给出的数据校检方式,构建“条件结构”来判断是否使用该组数据;
(4)将索引到的12个元素使用“创建数组”创建为新的数组,并使用“字符串至字节数组转换”转为字符串格式。
进一步地,步骤(5)所述的,将标准的12位字符串指令进行数据处理,并进行显示,具体如下:
(1)将标准的12位字符串指令转化为数组,并使用“索引数组”控件提取DATA4与DATA3,该两位元素包含舵机当前位移信息;
(2)使用“创建数组”将0 0 DATA4 DATA3创建为新数组,并将其转化为双精度浮点数;
(3)使用“减”控件减去65535,再使用“除”控件除以100,输出对应实际位移值。
下面结合附图和具体实施例,进一步阐述本发明。
实施例1
结合图1,本发明基于LabVIEW的电动直线舵机控制系统,包括硬件和软件两部分,硬件部分包括上位机PC、PXI机箱、NI实时控制器、RS422通信卡、舵机驱动器、直线舵机和辅助电源,所述直线舵机包括直流电机、齿轮减速器、滚柱丝杠和电位计;所述上位机装有LabVIEW编程平台,用于编写舵机控制程序并设计人机交互界面;下位机NI控制器与上位机采用TCP/IP通讯协议进行数据交换;舵机驱动器通过RS485通信接口与NI控制器相连接;辅助电源为舵机直流电机和驱动器分别提供58V和28V直流电压。软件部分基于LabVIEW平台开发,包括串口通信模块、参数设置模块、数据输入与读取模块、数据处理和显示模块。
系统运行的流程如图2,根据舵机所需要的运动模式,将舵机的运动方式分为两种运动模式:阶跃运动与正弦运动。舵机的运动过程的实时监测方法,包括以下步骤:
步骤1、开启装有LabVIEW的上位机与下位机PXI机箱;
步骤2、开启舵机电机与辅助电源;
步骤3、上位机程序串口初始化;
步骤4、设置舵机运动形式;
步骤5、舵机指令的发送和读取;
步骤6、界面的实时显示。
为了使操作方便,本发明还设计了基于LabVIEW的舵机的输入程序与舵机的读取程序。
舵机的输入程序的程序图如图3所示,程序设计步骤为:
(1)通过“VISA配置串口”配置串口相应的波特率、传输数据位;
(2)由上到下设计启动、位移与停止三个布尔量输入控件,将输入的三个布尔量转化为布尔数组,然后转化为十进制数值,并设计条件结构,根据按下相应的按钮后转化的十进制数字,选择对应的舵机执行功能。控制舵机所提供的控制指令如图4所示,按下启动控件则向舵机驱动器写入07 AC 00 00 00 00 01字符串启动指令;按下位移控件则向舵机驱动器写入位置指令;按下停止控件则向舵机写入停止字符串指令07 AD 00 00 00 00 02;
(3)建立“定时循环”,使整个输入程序实时运行,根据舵机控制要求,“定时循环”结构设定为1ms循环一次;
(4)建立“加载信号设置”控件,并设计“条件结构”,可以选择阶跃信号运行模式与正弦信号运行模式;
(5)给定阶跃信号与正弦信号时,通过(3)中设计的定时循环结构,将“循环计数”与常量0.001使用“乘”控件,并连接“正弦波(逐点)”控件,生成时间间隔为1ms的逐点正弦波;
(6)采样得到位移值,发明了将所采样得到的位移数值转换为相应位置控制指令的方法,数据处理方法如图5所示,根据图4控制舵机所接受的固定字符串格式,字符串指令格式规定为07 A3 DATALL DATALH DATAHL DATAHH CRC,CRC=03+DATALL+DATALH+DATAHL+DATAHH,数据处理方法为:首先将采样位置数值利用“乘”控件将数值放大100倍,并利用“转换为长整型”控件将其转换为32位长整型数据,然后利用“强制类型转换”控件转化为字符串并将其转化为一维数组,该一维数组包含四个元素,每个元素为八位,然后根据给出的舵机控制指令格式,采用“数组索引”提取数组中最后2个元素,并且使用“创建数组指令”将原数组中最后2个元素与2个零合并为新的数组,此数组就包含全部的控制舵机位移的信息;再引用“FOR循环”结构,使新数组的4个元素相加;接着使输出的数值再加3并输出CRC的值;最后,使用“创建数组”控件将07、A3、新数组、CRC组成最终的数组,并转化为所需的字符串指令格式。
结合图3所示,上述方案中读取程序在输入程序的基础上添加了对舵机驱动器串口返回数据的读取部分的程序,具体如下:
(1)对输入程序,使用“属性节点”用来不断监测端口是否有数据返回;
(2)建立“条件结构”,“属性节点”的Bytes at port端口连接“不等于零“后连接至“条件结构”的选择端口,当端口处的数据不为零时,则执行读取端口数据部分程序;
(3)读取舵机驱动器串口数据并进行截取有效部分数据,如图6所示,具体的操作步骤如下:结合图4,根据舵机的反馈指令格式,舵机不断循环返回12字节的字符串,其格式为55 00 00DATA0 DATA1 DATA2 DATA3 DATA4 DATA5 DATA6 DATA7 CRC(每个数据为16进制,每个数据为8位),其中CRC=DATA0+DATA1+DATA2+DATA3+DATA4+DATA5+DATA6+DATA7,CRC用于校验返回的数据是否正确,使用“VISA读取”控件读取舵机驱动器连续反馈的24个字节的字符串。
(4)结合图6,从(3)中截取的24字节的字符串中提取舵机所规定的12位反馈指令格式的数据,具体处理方法如下所示:
(4.1)将截取到的24字节字符串数据使用“字符串至字节数组转换”控件转换为一维数组,并且创建“While”循环,使程序不断循环运行;
(4.2)采用“搜索一维数组”控件不断地搜索十六进制数值55,并且在“搜索一维数组”后创建“条件结构”,搜索到55后将元素索引端口值加1并连接至“索引数组控件”,同时将55后面11个元素提取出来;
(4.3)根据所控制舵机给出的数据校检方式设计“条件结构”来判断是否使用该组数据;
(4.4)将索引到的12个元素使用“创建数组”创建为新的数组,并使用“字符串至字节数组转换”转为字符串格式。
(5)结合图7,将(3)中得到的标准的12位字符串指令进行数据处理并将其进行显示,具体实施方法如下:
(5.1)将标准的的12位字符串指令转化为数组,并使用“索引数组”控件提取DATA4与DATA3,该两位元素包含舵机当前位移信息;
(5.2)使用“创建数组”将0 0 DATA4 DATA3创建为新数组,并将其转化为双精度浮点数;
(5.3)使用“减”控件减去65535,再使用“除”控件除以100,输出对应实际位移值。
(6)使用“捆绑”控件将输入舵机位移指令的理想值与舵机返回实际位移指令捆绑为簇,并用“波形图表”输出显示。
本发明基于labVIEW设计了某型电动直线舵机的控制系统,具有程序简单,操作方便的有点,可以高效的实现对舵机位置控制和实时检测,为舵机模拟加载测试系统提供了一种良好的控制方案。
Claims (1)
1.一种基于LabVIEW的电动直线舵机控制方法,其特征在于,
舵机的运动方式分为阶跃运动和正弦运动两种,包括以下步骤:
步骤1、开启装有LabVIEW的上位机与下位机PXI机箱;
步骤2、开启舵机电机与辅助电源;
步骤3、上位机程序串口初始化;
步骤4、设置舵机运动形式;
步骤5、舵机指令的生成、发送和读取;
步骤6、通过上位机界面的实时显示,监控舵机的运动过程;
步骤5所述的舵机指令的生成,具体如下:
(1)通过“VISA配置串口”配置串口相应的波特率、传输数据位;
(2)由上到下构建启动、位移与停止三个布尔量输入控件,将输入的三个布尔量转化为布尔数组,然后转化为十进制数值,并构建“条件结构”,根据按下相应的按钮后转化的十进制数字,选择对应的舵机执行功能;
(3)建立“定时循环”,使整个输入程序实时运行,“定时循环”结构设定为1ms循环一次;
(4)建立“加载信号设置”控件,并构建“条件结构”,可以选择阶跃信号运行模式或正弦信号运行模式;
(5)给定阶跃信号与正弦信号时,通过定时循环结构,将“循环计数”与常量使用“乘”控件,并连接“正弦波”控件,生成时间间隔为1ms的逐点正弦波;
(6)将所采样得到的位移数值转换为相应位置控制指令;
步骤(6)所述的将所采样得到的位移数值转换为相应位置控制指令,具体如下:
根据直线舵机所接受的固定字符串格式,将字符串指令格式规定为07 A3 DATALLDATALH DATAHL DATAHH CRC,CRC=03+DATALL+DATALH+DATAHL+DATAHH;数据处理方法为:
首先将采样位置数值利用“乘”控件将数值放大100倍,并利用“转换为长整型”控件将其转换为32位长整型数据,然后利用“强制类型转换”控件转化为字符串并将其转化为一维数组,该一维数组包含四个元素,每个元素为八位,然后根据给出的舵机控制指令格式,采用“数组索引”提取数组中最后2个元素,并且使用“创建数组指令”将原数组中最后2个元素与2个零合并为新的数组,此数组就包含全部的控制舵机位移的信息;再引用“FOR循环”结构,使新数组的4个元素相加;接着使输出的数值再加3并输出CRC的值;最后,使用“创建数组”控件将07、A3、新数组、CRC组成最终的数组,并转化为所需的字符串指令格式;
步骤5中所述的舵机指令的读取,具体如下:
(1)使用“属性节点”来不断监测端口是否有数据返回;
(2)建立“条件结构”,“属性节点”的Bytes at port端口连接“不等于零”后连接至“条件结构”的选择端口,当端口处的数据不为零时,则读取端口数据;
(3)读取舵机驱动器串口数据并进行截取有效部分数据,具体如下:根据舵机的返回指令格式,舵机不断循环返回12字节的字符串,其格式为55 00 00 DATA0 DATA1 DATA2DATA3 DATA4 DATA5 DATA6 DATA7 CRC,每个数据为16进制,每个数据为8位,其中CRC=DATA0+DATA1+DATA2+DATA3+DATA4+DATA5+DATA6+DATA7,CRC用于校验返回的数据是否正确,使用“VISA读取”控件读取舵机驱动器连续返回的24个字节的字符串;
(4)从截取的24字节的字符串中提取舵机所规定的12位反馈指令格式的数据;
(5)将标准的12位字符串指令进行数据处理,并进行显示;
从截取的24字节的字符串中提取舵机所规定的12位反馈指令格式的数据,具体如下:
(1)将截取到的24字节字符串数据使用“字符串至字节数组转换”控件转换为一维数组,并且创建“While”循环,使程序不断循环运行;
(2)采用“搜索一维数组”控件搜索十六进制数值55,并且在“搜索一维数组”后创建“条件结构”,搜索到55后将元素索引端口值加1并连接至“索引数组控件”,同时将55后面11个元素提取出来;
(3)根据所控制舵机给出的数据校检方式,构建“条件结构”来判断是否使用该组数据;
(4)将索引到的12个元素使用“创建数组”创建为新的数组,并使用“字符串至字节数组转换”转为字符串格式;
步骤(5)所述的,将标准的12位字符串指令进行数据处理,并进行显示,具体如下:
(1)将标准的12位字符串指令转化为数组,并使用“索引数组”控件提取DATA4与DATA3,该两位元素包含舵机当前位移信息;
(2)使用“创建数组”将00DATA4 DATA3创建为新数组,并将其转化为双精度浮点数;
(3)使用“减”控件减去65535,再使用“除”控件除以100,输出对应实际位移值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810674701.1A CN108983640B (zh) | 2018-06-27 | 2018-06-27 | 一种基于LabVIEW的电动直线舵机控制系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810674701.1A CN108983640B (zh) | 2018-06-27 | 2018-06-27 | 一种基于LabVIEW的电动直线舵机控制系统及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108983640A CN108983640A (zh) | 2018-12-11 |
CN108983640B true CN108983640B (zh) | 2021-07-06 |
Family
ID=64538982
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810674701.1A Active CN108983640B (zh) | 2018-06-27 | 2018-06-27 | 一种基于LabVIEW的电动直线舵机控制系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108983640B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111858442B (zh) * | 2020-06-24 | 2022-05-06 | 深圳市优必选科技股份有限公司 | 一种基于多输出轴舵机的处理方法及处理系统 |
CN112506759B (zh) * | 2020-11-23 | 2023-11-14 | 四川航天烽火伺服控制技术有限公司 | 伺服系统控制软件的自动化测试方法、装置及存储介质 |
CN113377081B (zh) * | 2021-06-08 | 2022-11-04 | 中国人民解放军陆军工程大学 | 一种导弹控制箱的测试系统 |
CN114840462B (zh) * | 2022-05-17 | 2023-05-30 | 成都信息工程大学 | 一种基于Labview的3D控制驱动方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN202654716U (zh) * | 2012-05-25 | 2013-01-09 | 广州市驰远电子有限公司 | 一种直线舵机 |
CN103196463A (zh) * | 2013-03-05 | 2013-07-10 | 北京航空航天大学 | 一种基于Labview的捷联惯组标定系统的实现方法 |
CN107132042A (zh) * | 2017-06-30 | 2017-09-05 | 南京工程学院 | 基于Labview的防坠安全器制动安全性能测试系统及其测试方法 |
CN107203184A (zh) * | 2017-06-20 | 2017-09-26 | 南京理工大学 | 直线舵机电动加载系统的动态控制方法 |
CN108052135A (zh) * | 2017-12-04 | 2018-05-18 | 江苏大学 | 一种基于LabVIEW的空气净化器装置 |
CN108107931A (zh) * | 2017-12-14 | 2018-06-01 | 长安大学 | 一种混合料拌和质量控制方法和系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9796410B2 (en) * | 2016-01-28 | 2017-10-24 | Denso Corporation | Motor controller |
-
2018
- 2018-06-27 CN CN201810674701.1A patent/CN108983640B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN202654716U (zh) * | 2012-05-25 | 2013-01-09 | 广州市驰远电子有限公司 | 一种直线舵机 |
CN103196463A (zh) * | 2013-03-05 | 2013-07-10 | 北京航空航天大学 | 一种基于Labview的捷联惯组标定系统的实现方法 |
CN107203184A (zh) * | 2017-06-20 | 2017-09-26 | 南京理工大学 | 直线舵机电动加载系统的动态控制方法 |
CN107132042A (zh) * | 2017-06-30 | 2017-09-05 | 南京工程学院 | 基于Labview的防坠安全器制动安全性能测试系统及其测试方法 |
CN108052135A (zh) * | 2017-12-04 | 2018-05-18 | 江苏大学 | 一种基于LabVIEW的空气净化器装置 |
CN108107931A (zh) * | 2017-12-14 | 2018-06-01 | 长安大学 | 一种混合料拌和质量控制方法和系统 |
Non-Patent Citations (1)
Title |
---|
基于LABVIEW的锂电池监控系统;王成等;《电源技术》;20170120(第01期);第27-29、84页 * |
Also Published As
Publication number | Publication date |
---|---|
CN108983640A (zh) | 2018-12-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108983640B (zh) | 一种基于LabVIEW的电动直线舵机控制系统及方法 | |
CN203455827U (zh) | 应用于工业生产的多路数据采集系统 | |
CN101729002A (zh) | 基于sopc的无位置传感器无刷直流电机远程监控系统 | |
CN103516279B (zh) | 一种基于fpga的永磁同步电机控制芯片 | |
CN103984327B (zh) | 一种基于模糊控制的小型数字舵机系统 | |
CN203520080U (zh) | 一种通用变频器实时控制器 | |
CN106863309A (zh) | 一种基于dsp和fpga的欠驱动灵巧手控制系统 | |
CN103593527A (zh) | 一种一键设置pcb板中不同类型布线规则bga的设计方法 | |
CN103744354A (zh) | 用于制造机器人的plc控制系统及控制方法 | |
EP3992774A1 (en) | Method and device for implementing dot product operation, electronic device, and storage medium | |
CN103605366A (zh) | 移动机器人的图形化控制组态方法 | |
CN202058011U (zh) | 一种基于pxi总线的多轴向多点振动控制器 | |
CN202043074U (zh) | 可配置数字下变频器 | |
CN108108570B (zh) | 面向仿真模型设计的交流电机统一建模方法 | |
CN105958864A (zh) | 超声电机控制系统及其控制方法 | |
CN202841079U (zh) | 脉冲信号发生器和系统 | |
CN103001553A (zh) | 一种基于dsp的永磁同步电动机全数字交流伺服系统 | |
CN105511353A (zh) | 低频信号发生器及信号调试方法 | |
CN102591200A (zh) | 一种fpga控制系统开发平台 | |
CN111076759A (zh) | 一种基于fpga的便携式编码器检测装置及方法 | |
CN202003209U (zh) | 基于fpga的数字电源控制系统 | |
CN204392207U (zh) | 陷波滤波器 | |
CN103761354A (zh) | 电力系统仿真过程中的人机交互方法 | |
Xie et al. | Computer simulation study based on Matlab | |
CN202230331U (zh) | 一种智能控制板 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |