倍福PLC相关记录


关于Beckoff使用相关记录

六主轴电机-PLC底层-ADLINK驱动-QT界面

EtherCAT 主站控制 16轴伺服,PLC 控制上位逻辑

总结几点注意事项,方便后续查阅学习

驱动模块:KL2531/2541、EL7031/7041

1.控制周期默认2ms,理论最小设置参数50微秒;

2.运动控制功能库:TcMC.Lib

3.配置电机流程

硬件扫描-配置电机(参见移动硬盘F具体文档)-设置参数后需要激活配置-调试点动

F5触发,F6停止,F8复位,F9原点

Scaling Factor=电机转一圈最终工件移动量 /编码器反馈脉冲数

电机控制

1新建-resource-library manager-additional library-加载,变量名都是Axis_ref

记录:

TwinCAT XAE Shell 中确认实时线程优先级设置为最高,并关闭多余 Windows 服务。

确认网卡型号支持,安装 Beckhoff 提供的驱动,启用“实时驱动支持”。

初始化所有重要变量;仅对需保留的变量使用 RETAIN,并设置电池/UPS保护断电状态。

适用于 ADLINK 的 DAQ/运动控制卡通信包,如 DAQPilot, MotionCreatorPro2, PCIe-8338 SDK, APS SDK, ACL, WISE-PaaS/EdgeLink SDK

变量名对应,参照火星源码,徐工帮忙写的模板,也在F移动盘。

1
2
3
4
5
6
7
8
QModbusTcpClient *modbusDevice = new QModbusTcpClient(this);
modbusDevice->setConnectionParameter(QModbusDevice::NetworkAddressParameter, "192.168.0.10");
modbusDevice->setConnectionParameter(QModbusDevice::NetworkPortParameter, 502);
modbusDevice->connectDevice();

// 读取寄存器
QModbusDataUnit readUnit(QModbusDataUnit::HoldingRegisters, 0, 2); // 从地址0读取2个寄存器
auto *reply = modbusDevice->sendReadRequest(readUnit, 1); // 1 = 从站ID

几个头文件注意(后续补充一下):