当前位置: 首页 > news >正文

SoftMotion: DriveInterface: Analog

1 PLC_Config所设置的参数

1.1 BusInterface

参数说明
wParam1未使用
wParam2未使用
dwParam1未使用
dwParam2未使用

1.2 AxisGroup

参数说明
wParam1未使用
wParam2未使用
wParam3未使用
wParam4未使用
dwParam1未使用
dwParam2未使用
dwParam3未使用
dwParam4未使用

1.3 支持的控制类型(Drvie.wControlType)

类型是否支持
T / -不支持
V/V支持
V/P支持
P/P支持
PV/PV支持
V/-不支持
CONF支持

循环发送的数据须包含:fSetPosition(设定位置)和/或fActPosition(实际位置)。
循环接收的数据须包含:fActPosition(实际位置)和/或fActVelocity(实际速度)。

1.4 补充结构体 Analog_AXIS_REF

参数类型说明
inAnalogDriveInputData内部专用:循环数据输入接口结构(实时通信数据流的核心载体)
outAnalogOutput内部专用:循环数据输出接口结构(实时通信数据流的核心载体)
controllerAnalogPositionController内部专用:位置环PI控制器
hesSMC_HardwareEndSwitches内部专用:硬件限位开关
dwIncperTurnDWORD每转脉冲数(编码器分辨率参数)
dwEncoderCounterModuloDWORD设定编码器计数溢出的周期模数
dwMaxPositionDiffDWORD最大位置跟随误差(设为0时禁用监控)
bInvertDirectionBOOL编码器与传动机构方向反向
bOldCaptureOccuredBOOL内部专用
dwOldActPositionDWORD内部专用
dwActPositionDWORD内部专用
dwPosOffsetDWORD内部专用
TYPE Analog_AXIS_REF :
STRUCT(* 此处可定义厂商专用变量及参数 *)(* 若要在PLCConfig中查看并初始化这些变量,必须将其以MS.xxx格式写入*.cfg配置文件。*)in: AnalogDriveInputData;                       (*循环数据输入接口结构*)out: AnalogOutput;                              (*循环数据输出接口结构*)controller: AnalogPositionController;           (*位置环P控制器*)hes: SMC_HardwareEndSwitches;                   (*硬件限位开关*)(* 配置参数 *)dwIncPerTurn:DWORD:=4096;	                    (*编码器分辨率参数inc/U; 已废弃*)dwEncoderCounterModulo: DWORD := 0;	            (*设定编码器计数溢出的周期模数 *)dwMaxPositionDiff:DWORD:=16#1000;	            (*最大位置跟随误差 *)bInvertDirection: BOOL;	                        (*编码器与传动机构方向反向 *)(* 内部变量 *)bOldCaptureOccured: BOOL;dwOldActPosition, dwActPosition, dwPosOffset : DWORD;
END_STRUCT
END_TYPE
TYPE AnalogDriveInputData :
STRUCTbEndLimitPos : BOOL;        (*正向限位开关状态*)bEndLimitNeg : BOOL;        (*负向限位开关状态*)dwActPosition : DWORD;      (*编码器位置*)bLatchOccured: BOOL;        (*可选功能:上升沿表示锁存操作已执行*)dwLatchPosition: DWORD;     (*可选功能:锁存的位置*)
END_STRUCT
END_TYPE
FUNCTION_BLOCK AnalogOutput
VAR_INPUTbEnableIn: BOOL;fSetVelocity: LREAL;fMaxVelocityNeg, fMaxVelocityPos: LREAL;iMaxVelocityNeg, iZeroVelocity, iMaxVelocityPos: INT;bInvertDirection:BOOL;bEnableLatch: BOOL;
END_VAR
VAR_OUTPUTbEnable : BOOL;iSetVelocity : INT;
END_VAR

1.5 配置数据

在首个IEC周期内必须完成以下参数配置:

No.参数类型说明
1Drive_MS.dwMaxPositionDiffDWORD最大位置跟随误差(设为0时禁用监控)
2Drive_MS.dwEncoderCounterModuloDWORD编码器计数溢出的周期模数
3Drive_MS.bInvertDirectionBOOL编码器与传动机构方向反向
4Drive_MS.out.fMaxVelocityPosLREAL正向最大速度值(技术单位)——对应输出变量:iMaxVelocityPos
5Drive_MS.out.iMaxVelocityPosINT
6Drive_MS.out.iZeroVelocityINT零速偏移量(使驱动器保持静止状态的输出值)——对应参数:iZeroOffset
7Drive_MS.out.fMaxVelocityNegLREAL负向最大速度值(技术单位)——对应输出变量:iMinVelocityPos
8Drive_MS.out.iMaxVelocityNegINT
9Drive_MS.controller.fDeadTimeLREAL通信及系统延迟死区时间(周期数)
10Drive_MS.controller.fKPLREAL位置控制器的比例增益(P参数)
1.5.1 循环输入数据

应用程序中必须循环接收并更新以下数值:

No.参数类型说明
1Drive_MS.in.bEndLimitPosBOOL正向限位开关状态(未使用时需设置为TRUE)
2Drive_MS.in.bEndLimitNegBOOL负向限位开关状态(未使用时需设置为TRUE)
3Drive_MS.in.dwActPositionDWORD编码器位置
4Drive_MS.in.bLatchOccuredBOOL可选功能:上升沿表示锁存操作已执行
5Drive_MS.in.dwLatchPositionDWORD可选功能:锁存的位置
1.5.2 循环输出数据

应用程序必须向驱动系统循环发送以下数值:

No.参数类型说明
1bEnableBOOL激活驱动器使能状态
2iSetVelocityINT速度设定值
3bEnableLatchBOOL启用位置锁存功能

2 功能特性

  • 调节器使能(RegulatorOn)
  • 实时监控位置偏差并支持人工确认(lag errors)
  • 电子齿轮比灵活配置(通过dwRatioTechUnitsDenom/iRatioTechUnitsNum参数设置)
  • 支持直线轴/旋转轴类型
  • 多种控制模式
    • 位置模式
    • 速度模式
    • 通过byControllerMode参数1091动态配置控制模式
  • 限位开关安全保护
  • 支持归零
  • 高精度位置锁存
  • 驱动器错误管理

2.1 附件功能块

  • AnalogAutoAdjust

功能说明
该功能块驱动电机运行并自动调整控制器参数bInvertDirection、iZeroVelocity、fDeadTime、fKp。

操作必须谨慎,因为此过程中驱动器可能失稳并快速移动。

该功能仅在至少满足以下参数已设置的情况下使用:

No.参数类型说明
1Drive_MS.dwIncPerTurnDWORD编码器分辨率参数
2Drive_MS.dwMaxPositionDiffDWORD最大位置跟随误差
3Drive_MS.dwEncoderCounterModuloDWORD设定编码器计数溢出的周期模数
4Drive_MS.out.fMaxVelocityPosLREAL正向最大速度值(技术单位)——对应输出变量:iMaxVelocityPos
5Drive_MS.out.iMaxVelocityPosINT
6Drive_MS.out.iZeroVelocityINT零速偏移量(使驱动器保持静止状态的输出值)——对应参数:iZeroOffset
7Drive_MS.out.fMaxVelocityNegLREAL负向最大速度值(技术单位)——对应输出变量:iMinVelocityPos
8Drive_MS.out.iMaxVelocityNegINT

在执行此功能块前,必须确保驱动器已上电。

建议按以下流程操作:
1. 先将Drive_MS.controller.fKP设为0(禁用位置控制环)
2. 接着通过MC_Power功能块使能驱动器
3. 最后再启动本功能块。

此功能块禁止在每次启动时调用,仅限调试阶段使用。其输出参数需在执行后读取并存储,并在后续应用程序首次IEC周期中自动载入。

http://www.dtcms.com/a/474049.html

相关文章:

  • 公司网站公司简介宣传夸大受处罚电子产品网页设计
  • asp网站怎么下载源码大品牌网站建设
  • for循环套for循环(Java基础语法)
  • 运维的概念以及流程零基础入门到精通
  • 网站建设最难的是什么美食网站开发前期准备
  • cpp http 客户端与服务端 POST请求
  • 门户网站开发淘客网站备案教程
  • 【PHP】利用 xlswriter 扩展导出的Excel文件报错问题
  • wordpress+制作首页模板下载网站优化公司推荐
  • SDKMAN工具来实现JDK版本的管理
  • Einops vs PyTorch 张量操作对比指南
  • 钉钉提醒业务系统源码,网站定时钉钉提醒业务系统
  • CentOS 7 安装 bzip2-libs-1.0.6-13.el7.x86_64.rpm 的详细步骤
  • 太原手手工网站建设公司贵阳市建设管理信息网站
  • 树和二叉树——一文速通
  • 轻松可视化数据的利器——JSON Crack
  • 美橙互联网站后台推广计划和推广单元有什么区别
  • 《彻底理解C语言指针全攻略(3)》
  • ORB_SLAM2原理及代码解析:LocalMapping 线程——LocalMapping::Run()
  • 【Linux】进程控制(二) 深入理解进程程序替换与 exec 系列函数
  • Linux中页面回收函数try_to_free_pages的实现
  • Transformer架构——原理到八股知识点
  • 广州网站建设商城企业网站服务
  • 【STM32项目开源】基于STM32的自适应车流交通信号灯
  • 鸿蒙NEXT应用状态栏开发全攻略:从沉浸式到自定义扩展
  • 堆(超详解)
  • Java Redis “Sentinel(哨兵)与集群”面试清单(含超通俗生活案例与深度理解)
  • Eureka注册中心通用写法和配置
  • python内置函数map()解惑:将可迭代对象中的每个元素放入指定函数处理
  • 吕口*云蛇吞路的特效*程序系统方案