本文主要是介绍Keyence 激光刻印机 通讯指令,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
Keyence 激光刻印机 通讯指令
在此介绍 MD-F3200/5200 系列 ,MD-F3200/5200 系列 ,MD-U1000 系列 ,ML-Z9600 系列 常用通信接口。
(Keyence激光刻印机的通信接口在Keyence官网可下载,官方文档中有详细介绍,且功能全面,在此仅列举出常用功能,一般激光刻印项目使用已绰绰有余。)
(此处仅介绍(C#)程序中的通信部分,如需配合自动化机台使用,还需在 MarkingBuild或MarkingBuildPlus 软件中进行参数设置。)
(下文代码中使用的 Socket[1]
,为System.Net.Sockets
命名空间下的Socket
类。使用TCP连接即可。
Socket mSocket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);mSocket.Connect(ip, int.Parse(port));
)
- 切换刻印程序
命令 WX,ProgramNo=A【CR】
响应 WX,OK【CR】
public bool ChangeProgramNO(string prgNO)//切换 激光刻印机 程序{string send = string.Format("WX,ProgramNO={0}\r",prgNO);socket[1].SendMsg(send,"正在切换激光刻印机使用程序");string strresult = socket[1].BarcoderResult();string result= strresult.Split(',')[1].ToString().Trim();if (result=="OK"){ return true;} else{ return false; } }
- 校验程序号
命令 RX,ProgramNo【CR】
响应 RX,OK,A【CR】
public bool CheckProgramNO()//校验 激光刻印机 当前程序编号是否正确{string send = "RX,ProgramNO\r";socket[1].SendMsg(send,"正在获取激光刻印机当前使用程序编号");string strresult = socket[1].BarcoderResult();string codenum = strresult.Split(',')[2].ToString().Trim();if (config.Para.BarCodeNum == Convert.ToInt32(codenum)){ return true;} else{ return false; } }
- 将需要打印的4个二维码发送给激光刻印机
对象 PRG=0000~1999,BLK=000~255
命令 WX,PRG=0000,BLK=000,CharacterString=A【CR】
响应 WX,OK【CR】
public bool SendFourCodeToKeyence(string sn1,string sn2,string sn3,string sn4)//将需要打印的4个二维码发送给keyence 打码机{string Send = string.Format("WX,PRG={0},BLK=0,CharacterString={1},BLK=1,CharacterString={2},BLK=2,CharacterString={3},BLK=3,CharacterString={4}\r",config.Para.BarCodeNum, sn1, sn2, sn3, sn4);socket[1].SendMsg(Send,"正在向激光刻印机发送二维码");string strresult = socket[1].BarcoderResult();string result = strresult.Split(',')[1].ToString().Trim();if (result=="OK"){ return true;} else{ return false; }}
- 让激光刻印机开始打印二维码
命令 WX,StartMarking【CR】
响应 WX,OK【CR】
public bool StartMarking()//让Keyence 打码机开始打印二维码{string Send = "WX,StartMarking\r";socket[1].SendMsg(Send,"正在打印二维码");Thread.Sleep(1500);string strresult = socket[1].BarcoderResult();string result = strresult.Split(',')[1].ToString().Trim();if (result == "OK"){Log.Show("****** 以上4个二维码打印完成 ******",Color.Green);return true;}else{ return false; }}
- 附交互日志截图
这篇关于Keyence 激光刻印机 通讯指令的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!