选中对象》 按F1   //获取帮助

说明:  核心函数  SMC_NCInterpreter     // SMC_NC解释器

SMC_Interpolator  插补算法

SM3_CNC库文档
公司:3S-智能软件解决方案有限公司
标题:SM3_CNC
版本:4.13.0.0
分类:实习生| SoftMotion
作者:
占位符:SM3_CNC
说明[1]
该库的功能块允许读取、解释和插值g代码文件(根据DIN 66025)。
解释器(SMC_NCInterpreter)将路径转换为可以修改、转换和插值的结构,以便为驱动器创建循环设置位置。(例如
SMC_ReadNCFile2、//读取G代码文件
SMC_NCInterpreter、// G代码解析器
SMC_ToolRadiusCorr、//  刀具补偿
SMC_AvoidLoop、// 轨迹
SMC_SmoothPath、// 平滑路径
SMC_RoundPath、// 圆形路径
SMC_Interpolator)。// 插补算法
//=========================
SMC_TRAFO_5Axes //获取5轴电机坐标  SMC_TRAFO_GantryCutter3 (FB)解析,XYZR轨迹
SMC_ControlAxisByPos   // X axis  轴定位 XYZ R ABC功能块的功能分解允许特定组件被为特殊需求设计的功能块所取代。此外,进一步的功能块——比如单独的路径预处理器——可以与现有组件组合,而不会出现任何问题。
库的数据结构(例如SMC_POSINFO、SMC_GEOINFO和SMC_VECTOR3D)描述位置,SM_CNC_POUs  普通轴控制
SM_Trafo_POUs  龙门轴组控制Forward and inverse transformation  正逆变换SMC_TRAFOV_  // 解析坐标位置
// OF:(正计算)以实轴位置计算刀具中心点坐标
SMC_TRAFOF_5Axes (FB)            以5个轴位置,计算中心点在笛卡尔内的坐标
SMC_TRAFOF_Gantry2 (FB)          龙门2轴,以轴位置计算出点坐标在笛卡尔内的位置
SMC_TRAFOF_Gantry2Tool1 (FB)     XY+方位A轴
SMC_TRAFOF_Gantry2Tool2 (FB)     XY+AB轴(刀具方向和角度)
SMC_TRAFOF_Gantry3 (FB)          实例,3轴龙门坐标位置
SMC_TRAFOF_Gantry3D (FB)         实例,空间实际坐标位置
SMC_TRAFOF_GantryCutter2 (FB)    龙门滚刀,XYR旋转轴(核桃机?)
SMC_TRAFOF_GantryCutter3 (FB)    龙门柱,  XYZR
SMC_TRAFOF_GantryH2 (FB)         实例,龙门H形,XY
SMC_TRAFOF_GantryT2 (FB)         实例,龙门T形,XY
SMC_TRAFOF_GantryT2_O (FB)           与T2相比,驱动器配置有所不同(Y轴反向)
// OV:轴速度模式插补
SMC_TRAFOV_Gantry2 (FB)          解析,XY轨迹(用于图像比例显示)
SMC_TRAFOV_Gantry3 (FB)          解析,XYZ轨迹
SMC_TRAFOV_GantryCutter2 (FB)    解析,XYR切割轨迹(R旋转)
SMC_TRAFOV_GantryCutter3 (FB)    解析,XYZR切割轨迹
SMC_TRAFOV_GantryH2 (FB)         解析H龙门,XY轨迹 (参阅SM_Trafo_POUs概述。)
SMC_TRAFOV_GantryT2 (FB)         解析T龙门,XY速度
SMC_TRAFOV_GantryT2_O (FB)
// O:以理论坐标点反向计算实轴位置
SMC_TRAFO_5Axes (FB)             解析,XYZ,+倾斜+方位(用于硬件轴运动定位)
SMC_TRAFO_Gantry2 (FB)           解析,XY轨迹
SMC_TRAFO_Gantry2Tool1 (FB)      解析,XY+刀具距离
SMC_TRAFO_Gantry2Tool2 (FB)      解析,带刀补的XY轨迹
SMC_TRAFO_Gantry3 (FB)           解析,XYZ轨迹
SMC_TRAFO_GantryCutter2 (FB)     解析,XYR轨迹(R刀片方位)// 滚柱带刀片切割
SMC_TRAFO_GantryCutter3 (FB)     解析,XYZR轨迹 //雕核桃机,雕刻鸡蛋
SMC_TRAFO_GantryH2 (FB)          解析H,由XY计算出辅助AB轴位置
SMC_TRAFO_GantryT2 (FB)          解析T,由XY计算出辅助AB轴位置
SMC_TRAFO_GantryT2_O (FB)        具有固定驱动器的T型龙门架系统的反向转换(替代驱动器配置)。

使用请注明出处:维修电工 ,LSP电工,qq750273008

硬件要求:

中型PLC汇川AM600,禾川HCQ0-1100-d,且带 SM3_CNC.library 库(3.5.6支持离线仿真)

G代码标准: DIN66025

DIN66025-1标准G0    运动定位
G1    线性插补
G2    顺圆插补
G3    逆圆插补
G4    等待
G6    抛物线插补
G8    椭圆插补

M指令块:SMC_Interpolator  插补算法(按时间节拍,截取位置)

SMC_Interpolator    //插补器(遇到M指令会暂停)bAcknM置位(继续插补)
wM输出M指令值

H点胶指令:开关量

SMC_Interpolator    //插补器(遇到H指令不停顿)
N90    G1 X20
N100   G1 X100 H2 L20  H-2 L-10  //起点加20位置点胶,终点-10位置取消// H指令不会影响运动速度

辅助轴:

插补轴:X,Y,Z
辅助轴:A,B,C,P,Q,U,V,W    // 8个辅助轴
轴排序:ALL := 16#FFFF;
X := 2#1 ;
Y := 2#10 ;
Z := 2#100 ;
A,B,C,P,Q,U,V,W,A6,ALL,

库的用法:解析G代码文件

SMC_Interpolator  插补算法(按时间节拍,截取位置)

SMC_OutQueue,SMC_CNC_REF,File    //位置流,带参位置流,文件流SMC_ReadNCFile        // G代码文件读取//仿真路径// C:\ProgramData\CODESYS\Simulation\PlcLogic\SMC_NCDecoder         // G代码文件解码》输出poqDataOut(位置坐标流/轨迹坐标)
SMC_ToolCorr          // 工具参数
SMC_SmoothPath  // 轨迹平滑
SMC_CheckVelocities   // 轨迹速度检查》输出的轨迹数据要给插补器 poqDataOutSMC_Interpolator      // 插补器,运算: 》输入:轨迹数据poqDataOut//               》输出:piSetPosition
SMC_TRAFO_Gantry3     // 解析出3轴坐标  》输入:pi//               》输出:dx,dy,dz分发给轴定位控制SMC_ControlAxisByPos   // X axis  轴定位 XYZABC

1读取G代码文件解析

G代码文件》保存到 _cnc文件夹内NC文件路径: STRING := '_cnc/gcode.cnc'; //PLC参考路径在本体主根目录下,G代码放在_cnc文件夹内// (后续以这个路径参考点再添加文件深度)

放该文件夹内 ,文件名例如: SouJiKe.txt     // 雕刻手机壳的G代码文件

2插补运算:SMC_Interpolator插补器,  poqDataOut轨迹

利用 SMC_CheckVelocities(轨迹速度检查)的输出做输入
poqDataOut轨迹流

SMC_Interpolator  插补算法(按时间节拍,截取位置)piSetPosition   输出以时间为节拍的坐标流SMC_TRAFO_Scara2   解析出节拍坐标位置》并发给对应的伺服电机

库函数:POU 功能块

SM3_CNC  , ( 3.5.8.0 )
SM_CNC_POUs》SoftMotion CNC》SoftMotion Function Blocks
SM3_CNC, 3.5.8.0
Project Information        // get项目信息
SM_CNC_Data types          // SM_CNC_数据类型
SM_CNC_POUs                // CNC程序块  SMC_ReadNCFile文件  SMC_ReadNCQueue队列
SM_Trafo_Data type         // 轴组,龙门,机器人,数据类型
SM_Trafo_POUs              // 轴组转换功能块  Gantry systems龙门系统
Visu_Templates             // 模板
Visu_Templates_New         // 新模板

轴组:龙门轴组,6轴机械臂,码垛机,行架 等

添加轴组后,可以选轴组类型,龙门数控或者搬运机械臂等。。。轴组的库是 robotics (机器人)

转换FB块为5轴_龙门。
5轴由:X,Y,Z,A,B 轴组成
4是A轴:是旋转轴。(垂直于Z轴旋转,比如刀片)
3是B轴:是倾斜轴。(与Z角度仰角调节,如铣刀倒角)

刀具长度(u) :

双X轴龙门:

这里涉及到2个电机:x1轴和x2轴
x1轴为主,x2轴为从,x2轴一直去追赶x1轴的坐标位置。用 MC_GearIN 电子齿轮在齿条型的X大梁,x2轴如果与x1轴位置超差过大,会导致X大梁卡死。所以x2轴伺服要配置成:(力矩加定位)的混合模式PRT。函数使用:  MC_GearIN    电子齿轮功能  (注:注意从轴的追赶速度值大小)
脱开:      MC_GearOut   断开耦合另一种方案是:新建一个虚轴。x1和x2去追赶虚轴的坐标。
H型龙门:这种如3D打印机,喷头单一方向移动,需要2个电机配合旋转,XY的皮带是串联的。

圆弧插补:

SMC_RoundPath

轴组状态:

SM3_Robotics  4.13.0.0SMC_GroupPower    电源
MC_GroupEnable    使能    MC_GroupDisable    关闭MC_GroupReset    复位
MC_GroupStop     停止
SMC_GroupWait    等待
MC_GroupContinue    继续SMC_GroupJog2    点动
MC_GroupSetPosition        设置轴位置 a,c,v,坐标MC_MoveLinearAbsolute    MC_直线绝对移动
MC_MoveLinearRelative    MC_直线相对移动MC_MoveCircularAbsolute    MC_循环绝对移动
MC_MoveCircularRelative    MC_循环相对值移动MC_MoveDirectAbsolute    MC_直接绝对值移动
MC_MoveDirectRelative    MC_直接相对移动MC_AddAxisToGroup        添加轴组
MC_RemoveAxisFromGroup   删除一个轴
MC_UngroupAllAxes        解散轴组
SMC_GroupTargetPosition     SMC_组目标位置SMC_GroupEnableResumeAfterError    错误后组启用恢复
SMC_GroupUpdateContinueData    组更新连续数据
MC_SetCoordinateTransform    设置坐标转换(工件坐标,机械臂坐标,轴坐标)

SM3_CNC,轴组,G代码解析,CNC运动控制相关推荐

  1. dxf文件解析,g代码解析,图片解析C#工程文件

    dxf文件解析,g代码解析,图片解析C#工程文件 1.解析完成的图形坐标自动保存,通过通信接口直接下发即可 2.可用于激光切割机,打印机,打码机,巡边机,点胶机等运动控制系统 ID:693000659 ...

  2. dxf文件解析,g代码解析,图片解析C#工程文件 可用于激光切割机,打印机,打码机,巡边机,点胶机等运动控制系统

    dxf文件解析,g代码解析,图片解析C#工程文件 1.解析完成的图形坐标自动保存,通过通信接口直接下发即可 2.可用于激光切割机,打印机,打码机,巡边机,点胶机等运动控制系统 ID:483000659 ...

  3. G代码解释CNC 66025标准

    https://content.helpme-codesys.com/zh-CHS/CODESYS%20SoftMotion/_sm_cnc_din66025_arc.html G0 无需工具操作直接 ...

  4. c语言9999是合法常量吗,只会G代码不会宏程序,都不敢说自己是老师傅!

    原标题:只会G代码不会宏程序,都不敢说自己是老师傅! 一.变量 普通加工程序直接用数值指定G代码和移动距离:例如,GO1和X100.0.使用用户宏程序时,数值可以直接指定或用变量指定.当用变量时,变量 ...

  5. 西门子1200PLC程序SCL数控G代码功能块源文件 S7-1200PLC程序SCL数控G代码功能块源文件

    西门子1200PLC程序SCL数控G代码功能块源文件 S7-1200PLC程序SCL数控G代码功能块源文件 实际项目拆分出封装好的的功能块,保证好用 整个G代码解析的程序做成了一个FB功能块,总共约1 ...

  6. CNC加工中心的G代码详细解析

    G代码是数控程序中的指令.一般都称为G指令. 1. 代码功能 代码名称-功能简述 G00------快速定位 G01------直线插补 G02------顺时针方向圆弧插补 G03------逆时针 ...

  7. 三菱加工中心CNC编程G代码讲解

    注意:在G之后没有接续数值指令中,在运转时将变成G00的动作.(注1)印有"*"记号表示初期状态应选择的指令码或被选择的指令码.印有"※"记号表示初期状态依参数 ...

  8. 3d打印c语言与g代码混合编程,[转载]三轴运动控制器、串口运动控制器、支持G代码、3D打印机、雕刻、源代码开放、...

    串口运动控制器,支持G代码.M代码 3D打印机.雕刻机.激光雕刻.木工雕刻.微型CNC.开源GRBL运动控制平台 电源电压:DC12V-24V CPU:Atmega328P 串口:RS232电平,通信 ...

  9. G代码 机器人的CNC实现

         控制铣削工作台和工件的NC程序,通过CAD软件创建,这些NC程序与特定的机器类型相关.   NC程序在笛卡尔坐标系中动作的描述,对于需要确保一个明确的变换轴位置的关节型的机器人来说,缺少附 ...

最新文章

  1. 爆气球这道题目,展开了新的思路
  2. 鸿海拟收购韩国家电企业东洋美吉 价格或达4.5亿美元
  3. Apriori算法进行关联分析(1)
  4. 荣耀30会升级鸿蒙吗,荣耀手机也能升级!第三批鸿蒙手机升级名单大曝光:全球第三稳了...
  5. idea package自动生成_懒人必备,IntelliJ IDEA中代码一键生成
  6. 九、Pandas高级处理
  7. 【C语言重点难点精讲】C语言预处理
  8. 一致 先验分布 后验分布_「分布式技术」分布式事务最终一致性解决方案,下篇...
  9. Wpf之Tree使用Dictionary作为数据源
  10. angularjscheckbox全选_Vue Checkbox全选和选中的方法
  11. Unity3D 代码优化
  12. AutoJs学习-几个QQ群脚本(群引流\提取成员\加群友\加群)
  13. 80后 最牛的辞职信
  14. omnet++ 第一个工程的创建
  15. python爬取收费漫画_Python爬虫,爬取腾讯漫画实战
  16. 主流chatbot机器人调研
  17. 真心话大冒险HTML5小游戏,真心话大冒险游戏怎么玩才有趣
  18. 我是一个线程(修订版)
  19. Linux之基础命令
  20. Permissioned Blockchains:Properties, Techniques and Applications翻译

热门文章

  1. GDR 软件和QFE 软件
  2. 如何快速定位公式单元格区域
  3. 逃避日志记录攻击过程
  4. Git使用 从入门到入土 收藏吃灰系列 (十四) 清除git仓库的所有提交记录
  5. mysql数据转换拼音函数
  6. 【移动端网页布局】移动端网页布局基础概念 ⑧ ( 移动端页面布局方案 | 单独制作的移动端页面 - 主流 | 响应式页面兼容移动端 - 开发难度较大 )
  7. Windows Server 2003特别版图片展示(转)
  8. UartAssist,串口调试助手
  9. 使用GPRS的cmwap接入点实现网络通讯1-----建立连接
  10. 安装显卡GTX1080Ti显卡在Ubuntu16.04 安装教程