日立(Hitachi)喷码机数据采集

一,简介
日立喷码机可采集的内容挺丰富,比如设备状态,告警状态,印字次数,配方列表,正在使用的配方名(在喷码机里叫做Message,国内常叫配方),配方编号等等。在数据采集过程中,遇到了一些坑,特地记录一下。

二,过程
1,购买通信板卡以及安装授权文件
通信板卡可以扩展出modbus通信,在这里吐槽一下代理商,买了板卡只给了安装示意图,没给授权文件,搞了一天一直连不上喷码机,咨询代理商才知道还需要把授权文件发过来并安装才行。

2,使用官方SDK测试
在这里再次吐槽两下代理商:

一是资料不一次性发过来,看了老半天技术文档,发现有些内容在文档里找不到,再次询问才得知还有另外的文档。总共有两份文档是需要的,通信使用手册以及sop-4。

二是官方demo程序提示出错,技术支持不知怎么回事......

3,使用第三方代码测试
在github找到一个第三方代码,参考GitHub - MarvinThompson/HitachiEtherNetIP: EthetNet/IP interface to Hitachi EtherNet/IP enabled printers

实测该代码完全正常。官方demo代码和第三方代码在连接喷码机时的对比如下:

//官方demo代码
// Occurs when the [Connect] button is clicked.
void CIJPLib_Test_2Dlg::OnBnClickedConnectButton()
{
    if ( NULL == m_pIJP )
    {
        ConnectIJP ();
        SetDlgItemText ( IDC_CONNECT_BUTTON, L"&Disconnect" );
    }
    else
    {
        DisconnectIJP ();
        SetDlgItemText ( IDC_CONNECT_BUTTON, L"&Connect" );
    }
}

//第三方代码      
// Connect to the printer
      void cmdConnect_Click(object sender, EventArgs e) {
         if (ConfigureConnection.SelectedIndex == 0) {
            // Ethernet Connection
            HP.Connect(ipAddress, ipPort);
         } else if (ConfigureConnection.SelectedIndex == 1) {
            // Serial connection
            HP.Connect(sPort, sBaudRate, sParity, sDataBits, sStopBits);
         } else {
            HP.Connect();
         }
         HP.IssueControl(ControlOps.ComOn);
      }
通过对比发现,第三方代码在执行connect之后,会进行一个设置动作 HP.IssueControl(ControlOps.ComOn),查阅后发现是对一个叫做本地/远程的寄存器进行操作,把数值改成远程。咨询技术支持才知道,这个寄存器的意思是:选择本地模式,就可以在喷码机操作面板进行操作,不能通过远程通信的方式进行操作;选择远程模式,在喷码机操作面板不能操作(只能进行模式切换,其他不能操作),通过远程通信的方式可以操作。实测发现,在本地模式,远程通信可以读取到设备状态以及告警状态,其他会返回出错。文档里没找到这个寄存器的详细解释(可能本人看得不够仔细,欢迎指正),技术支持非得在问到这个问题时才回答,在一开始使用官方SDK出错时,竟然不知怎么回事......

4,总结
第三方代码完成度非常高,可以直接参考使用,从代理商处拿到全部开发文档即可。

三,遗留问题
通信板卡是通过modbus协议通信的,直接通过modbus读寄存器,发现很多信息无法获取,官方SDK封装了一个中间层,看不到实际是怎样读写寄存器的。
————————————————
版权声明:本文为CSDN博主「CNC注塑机PLC专业数采」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/q22837656/article/details/123975683

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值