|

分享源码
界面截图: |
|
是否带模块: |
调用了模块 |
备注说明: |
- |
一直都在论坛上白嫖,今天我也贡献一点吧。雷赛运动控制器的测试源码,基于雷赛官方SMC106A动态库编写(未完全版本,正在研究中)
源码有调用精易模块,请自行下载。
源码功能正常(需要搭配SMC106A测试。) 集_连接控制器 = smc_board_init (0, 2, “192.168.5.11”, 0 ) 如果真 (集_连接控制器 ≠ 0 ) 信息框 (“控制器未链接”, 0, “错误”, ) 返回 ()组合框1.现行选中项 = 1组合框2.现行选中项 = 1 组合框3.现行选中项 = 1 组合框4.现行选中项 = 1 组合框5.现行选中项 = 1 组合框6.现行选中项 = 1 组合框7.现行选中项 = 1 组合框8.现行选中项 = 2 组合框9.现行选中项 = 2 组合框10.现行选中项 = 2 组合框11.现行选中项 = 2 组合框12.现行选中项 = 2 组合框13.现行选中项 = 2 组合框14.现行选中项 = 0 组合框15.现行选中项 = 0 组合框16.现行选中项 = 0 程序配置 ()启动线程 (&_运动状态监视_时钟_周期事件, , )启动线程 (&_IO监控_时钟_周期事件, , )全_错误代码 = smc_emg_stop (0 ) 全_错误代码 = smc_board_close (0 )变量名 | 类 型 | 静态 | 数组 | 备 注 | 局_有效电平0 | 整数型 | | | 局_有效电平1 | 整数型 | | | 局_有效电平2 | 整数型 | | | 局_回原点方向0 | 整数型 | | | 局_回原点方向1 | 整数型 | | | 局_回原点方向2 | 整数型 | | | 局_回原点模式0 | 整数型 | | | 局_回原点模式1 | 整数型 | | | 局_回原点模式2 | 整数型 | | | 局_重置模式0 | 整数型 | | | 局_重置模式1 | 整数型 | | | 局_重置模式2 | 整数型 | | | 局_重置位置0 | 双精度小数型 | | | 局_重置位置1 | 双精度小数型 | | | 局_重置位置2 | 双精度小数型 | | | 局_启动速度0 | 双精度小数型 | | | 局_启动速度1 | 双精度小数型 | | | 局_启动速度2 | 双精度小数型 | | | 局_最大速度0 | 双精度小数型 | | | 局_最大速度1 | 双精度小数型 | | | 局_最大速度2 | 双精度小数型 | | | 局_加速时间0 | 双精度小数型 | | | 局_加速时间1 | 双精度小数型 | | | 局_加速时间2 | 双精度小数型 | | | 原点模式0 | 整数型 | | | 原点模式1 | 整数型 | | | 原点模式2 | 整数型 | | |
集_启动速度 = 到数值 (编辑框1.内容 )集_停止速度 = 到数值 (编辑框2.内容 )集_最大加速 = 到数值 (编辑框3.内容 )集_加速时间 = 到数值 (编辑框4.内容 )集_减速时间 = 到数值 (编辑框5.内容 )集_S段时间 = 到数值 (编辑框6.内容 )集_指定位置 = 到数值 (编辑框7.内容 )全_错误代码 = smc_set_pulse_outmode (0, 0, 1 ) 全_错误代码 = smc_set_pulse_outmode (0, 1, 1 ) 全_错误代码 = smc_set_pulse_outmode (0, 2, 1 ) 全_错误代码 = smc_set_equiv (0, 0, 1 ) 全_错误代码 = smc_set_equiv (0, 1, 1 ) 全_错误代码 = smc_set_equiv (0, 2, 1 ) 全_错误代码 = smc_set_backlash_unit (0, 0, 0 ) 全_错误代码 = smc_set_backlash_unit (0, 1, 0 ) 全_错误代码 = smc_set_backlash_unit (0, 2, 0 ) 全_错误代码 = smc_set_profile_unit (0, 0, 集_启动速度, 集_最大加速, 集_加速时间, 集_减速时间, 集_停止速度 ) 全_错误代码 = smc_set_profile_unit (0, 1, 集_启动速度, 集_最大加速, 集_加速时间, 集_减速时间, 集_停止速度 ) 全_错误代码 = smc_set_profile_unit (0, 2, 集_启动速度, 集_最大加速, 集_加速时间, 集_减速时间, 集_停止速度 ) 全_错误代码 = smc_set_s_profile (0, 0, 0, 集_S段时间 ) 全_错误代码 = smc_set_s_profile (0, 1, 0, 集_S段时间 ) 全_错误代码 = smc_set_s_profile (0, 2, 0, 集_S段时间 ) 局_有效电平0 = 组合框2.现行选中项 局_有效电平1 = 组合框3.现行选中项 局_有效电平2 = 组合框4.现行选中项 局_回原点方向0 = 组合框5.现行选中项 局_回原点方向1 = 组合框6.现行选中项 局_回原点方向2 = 组合框7.现行选中项 局_回原点模式0 = 组合框8.现行选中项 局_回原点模式1 = 组合框9.现行选中项 局_回原点模式2 = 组合框10.现行选中项 局_重置模式0 = 组合框11.现行选中项 局_重置模式1 = 组合框12.现行选中项 局_重置模式2 = 组合框13.现行选中项 局_重置位置0 = 到数值 (编辑框8.内容 )局_重置位置1 = 到数值 (编辑框9.内容 )局_重置位置2 = 到数值 (编辑框10.内容 )局_启动速度0 = 到数值 (编辑框11.内容 )局_启动速度1 = 到数值 (编辑框12.内容 )局_启动速度2 = 到数值 (编辑框13.内容 )局_最大速度0 = 到数值 (编辑框14.内容 )局_最大速度1 = 到数值 (编辑框15.内容 )局_最大速度2 = 到数值 (编辑框16.内容 )局_加速时间0 = 到数值 (编辑框17.内容 )局_加速时间1 = 到数值 (编辑框18.内容 )局_加速时间2 = 到数值 (编辑框19.内容 )原点模式0 = 组合框14.现行选中项 原点模式1 = 组合框15.现行选中项 原点模式2 = 组合框16.现行选中项 全_错误代码 = smc_set_home_profile_unit (0, 0, 局_启动速度0, 局_最大速度0, 局_加速时间0, 0 ) 全_错误代码 = smc_set_home_profile_unit (0, 1, 局_启动速度1, 局_最大速度1, 局_加速时间1, 0 ) 全_错误代码 = smc_set_home_profile_unit (0, 2, 局_启动速度2, 局_最大速度2, 局_加速时间2, 0 ) 全_错误代码 = smc_set_home_position_unit (0, 0, 局_重置模式0, 局_重置位置0 ) 全_错误代码 = smc_set_home_position_unit (0, 1, 局_重置模式1, 局_重置位置1 ) 全_错误代码 = smc_set_home_position_unit (0, 2, 局_重置模式2, 局_重置位置2 ) 全_错误代码 = smc_set_homemode (0, 0, 局_回原点方向0, 1, 局_回原点模式0, 0 ) 全_错误代码 = smc_set_homemode (0, 1, 局_回原点方向1, 1, 局_回原点模式1, 0 ) 全_错误代码 = smc_set_homemode (0, 2, 局_回原点方向2, 1, 局_回原点模式2, 0 ) 全_错误代码 = smc_set_home_pin_logic (0, 0, 局_有效电平0, 0 ) 全_错误代码 = smc_set_home_pin_logic (0, 1, 局_有效电平1, 0 ) 全_错误代码 = smc_set_home_pin_logic (0, 2, 局_有效电平2, 0 ) 全_错误代码 = smc_set_el_home (0, 0, 原点模式0 ) 全_错误代码 = smc_set_el_home (0, 1, 原点模式0 ) 全_错误代码 = smc_set_el_home (0, 2, 原点模式0 ) 启动线程 (&开始, , )程序配置 ()局_运行方向 = 组合框1.现行选中项 如果真 (单选框1.选中 = 真) 如果真 (选择框1.选中 = 真)  全_错误代码 = smc_pmove_unit (0, 0, 集_指定位置, 1 )  如果真 (选择框2.选中 = 真)  全_错误代码 = smc_pmove_unit (0, 1, 集_指定位置, 1 )  如果真 (选择框3.选中 = 真)  全_错误代码 = smc_pmove_unit (0, 2, 集_指定位置, 1 )   如果真 (单选框2.选中 = 真) 如果真 (选择框1.选中 = 真)  全_错误代码 = smc_vmove (0, 0, 局_运行方向 )  如果真 (选择框2.选中 = 真)  全_错误代码 = smc_vmove (0, 1, 局_运行方向 )  如果真 (选择框3.选中 = 真)  全_错误代码 = smc_vmove (0, 2, 局_运行方向 )    变量名 | 类 型 | 静态 | 数组 | 备 注 | 当前位置0 | 双精度小数型 | | | 当前位置1 | 双精度小数型 | | | 当前位置2 | 双精度小数型 | | | 局_运动状态0 | 整数型 | | | 局_运动状态1 | 整数型 | | | 局_运动状态2 | 整数型 | | |
运动状态监视_时钟.时钟周期 = 1 局_运动状态0 = smc_check_done (0, 0 ) 局_运动状态1 = smc_check_done (0, 1 ) 局_运动状态2 = smc_check_done (0, 2 ) 如果 (局_运动状态0 = 1 ) 标签3.标题 = “停止” 标签3.标题 = “运行” 全_错误代码 = smc_get_position_unit (0, 0, 当前位置0 ) 标签4.标题 = 到文本 (到整数 (当前位置0 )) 如果 (局_运动状态1 = 1 )标签7.标题 = “停止” 标签7.标题 = “运行”全_错误代码 = smc_get_position_unit (0, 1, 当前位置1 )标签8.标题 = 到文本 (到整数 (当前位置1 )) 如果 (局_运动状态2 = 1 )标签11.标题 = “停止” 标签11.标题 = “运行”全_错误代码 = smc_get_position_unit (0, 2, 当前位置2 )标签12.标题 = 到文本 (到整数 (当前位置2 ))    IO监控_时钟.时钟周期 = 50 如果 (smc_read_outbit (0, 0 ) = 0 ) 标签47.背景颜色 = #绿色  标签47.背景颜色 = #红色 如果 (smc_read_outbit (0, 1 ) = 0 )标签48.背景颜色 = #绿色  标签48.背景颜色 = #红色 如果 (smc_read_outbit (0, 2 ) = 0 )标签49.背景颜色 = #绿色  标签49.背景颜色 = #红色 如果 (smc_read_outbit (0, 3 ) = 0 )标签50.背景颜色 = #绿色  标签50.背景颜色 = #红色 如果 (smc_read_outbit (0, 4 ) = 0 )标签51.背景颜色 = #绿色  标签51.背景颜色 = #红色 如果 (smc_read_outbit (0, 5 ) = 0 )标签52.背景颜色 = #绿色  标签52.背景颜色 = #红色 如果 (smc_read_outbit (0, 6 ) = 0 )标签53.背景颜色 = #绿色  标签53.背景颜色 = #红色 如果 (smc_read_outbit (0, 7 ) = 0 )标签54.背景颜色 = #绿色  标签54.背景颜色 = #红色 如果 (smc_read_outbit (0, 8 ) = 0 )标签55.背景颜色 = #绿色  标签55.背景颜色 = #红色 如果 (smc_read_outbit (0, 9 ) = 0 )标签56.背景颜色 = #绿色  标签56.背景颜色 = #红色 如果 (smc_read_outbit (0, 10 ) = 0 )标签57.背景颜色 = #绿色  标签57.背景颜色 = #红色 如果 (smc_read_outbit (0, 11 ) = 0 )标签58.背景颜色 = #绿色  标签58.背景颜色 = #红色             全_错误代码 = smc_emg_stop (0 ) 全_错误代码 = smc_stop (0, 0, 0 ) 全_错误代码 = smc_stop (0, 1, 0 ) 全_错误代码 = smc_stop (0, 2, 0 ) 全_错误代码 = smc_set_position_unit (0, 0, 10 ) 标签4.标题 = “0”全_错误代码 = smc_set_position_unit (0, 1, 10 ) 标签8.标题 = “0”全_错误代码 = smc_set_position_unit (0, 2, 10 ) 标签12.标题 = “0”程序配置 () 如果真 (选择框1.选中 = 真) 全_错误代码 = smc_home_move (0, 0 ) 如果真 (选择框2.选中 = 真) 全_错误代码 = smc_home_move (0, 1 ) 如果真 (选择框3.选中 = 真) 全_错误代码 = smc_home_move (0, 2 ) 回原点状态_时钟.时钟周期 = 100变量名 | 类 型 | 静态 | 数组 | 备 注 | 局_回原点状态0 | 整数型 | | | 局_回原点状态1 | 整数型 | | | 局_回原点状态2 | 整数型 | | |
全_错误代码 = smc_get_home_result (0, 0, 局_回原点状态0 )全_错误代码 = smc_get_home_result (0, 0, 局_回原点状态1 )全_错误代码 = smc_get_home_result (0, 0, 局_回原点状态2 ) 如果真 (局_回原点状态0 = 1 且 局_回原点状态1 = 1 且 局_回原点状态2 = 1 ) 回原点状态_时钟.时钟周期 = 0 信息框 (“回零成功”, 0, , ) 返回 ()
|
评分
-
查看全部评分
|