Node-RED教程 – 23 欧姆龙 CP1H通讯


本文利用node-red与欧姆龙CP1H通讯,PLC图示如下。


先把PLC上电。


欧姆龙CP1H需要添加模块才能以太网通讯,型号为CP1W-CIF41。


安装方法如下。


安装完成后,打开欧姆龙编程软件CX-Programmer进行通讯设置,需要先用数据线直连通讯。









直连通讯完成后我们就可以确认PLC的IP是多少了。



本文中CP1W-CIF41插在选件板插槽2里面查看D32455和D32456两个寄存器,插在选件板插槽1,IP地址保存在D32155和D32156这两个寄存器中。


本文模块插在选件板2位置,找到D32455和D32456这两个寄存器位置,上图红色箭头标出这两个位置,值分别为十六进制的C0A8和010A,我们把这两个寄存器转换成十进制,C0:192,A8:168,01:1,0A:10,可以看出PLCIP地址为192.168.1.10,这是我们可以插上网线,把电脑的网段设置成同一网段。


断开之前PLC与CX-Programmer的USB链接,改用网线连接PLC,双击“新PLC1”将“网络类型”选择Ethernet。



这样以太网就完成了。

打开node-red,打开设置,进入节点管理,我们需要先下载2个节点(node-red-contrib-omron-fins、node-red-dashboard)才能进行下一步操作。




我们可以先把网页翻译成中文,可以更好的方便我们浏览。


部署完成后,左侧菜单栏里会多出2个节点。



节点下载完成后,我们要是想进行数值写入可以进行如下步骤:

拉出如下节点。



把他们连起来,如下图所示。


并把他们的节点配置一下。



在【dashboardtab】节点里,在【name】栏输入教学演示,其余默认,如下图所示。






接下来我们设置【finstransfer】节点,打开此节点,在【connection】栏输入之前设好的IP地址,【source】栏输入【】,【destination】栏输入【】,【count】栏输入数字列1,【outputproperty】栏输入【payload】属性,如下图所示。


上述步骤完成后,我们就可以通过网页观看效果图了,其步骤如下。


按照如上方法进入网页,其效果图如下。


在PLC数值输入输入30,PLC内也跟着变化为30,其原理是在【finswrite】节点里写入的值通过【finstransfer】节点将D3值传输到D4。

那如果要数据读取,可以进行如下步骤。

拉出我们所需节点,如下所示。


【textinput】节点和【button】节点还有【text】节点这3个节点都可以在dashboard节点工具箱内找到,【change】节点和【function】节点可以在【功能】节点工具箱内找到,【finsreadmultiple】节点可以在【omron】节点工具箱内找到,找到图上节点后,依次连起来,部署一下。

部署完成后,依次把该节点配置一下,打开【textinput】节点,在【group】栏选中教学群组,【label】栏输入IP地址,其余不变,如下所示。


打开【change】节点,在规则栏选中设定,属性条件为【】tothevalue【】,如下图所示。


打开【button】节点,在【group】栏选中教学群组,在【label】栏输入读内存,payload属性值为【】,topic属性值为【】,如下图所示。


打开【finsreadmultiple】节点,在【connection】栏选中之前配置好的IP地址,在【addresses】栏输入【】,在【outputproperty】栏输入属性值为【】,在【output】栏选中【unsignedkey/value】,如下图所示。



最后打开【text】节点,在【group】栏选中教学群组,在【valueformat】栏输入属性值为【{{[0]}}】,如下图所示。


以上节点设置完成后,我们就可以进入网页观看效果图,效果图如下。


我们可以先在PLC数值输入内输入一个数值,例如本文输入的值为60,然后在IP地址栏输入PLCIP地址,通过读内存按钮来读取D4寄存器的值,因为数值输入的值会传输到D4寄存器所以我们按下读内存按钮他会读取D4寄存器的值也就是60。

那如果我们要添加一个控制通断功能我们可以进行如下操作。


【switch】节点可以在dashboard节点工具箱里找到,【finscontrol】节点可以在omron节点工具箱里找到,找到这2个节点后,把这2个节点连起来,接下来我们把这2个节点配置以下。

打开【switch】节点,在【group】栏输入教学群组,在【label】栏输入控制通断,在【onpayload】栏输入布尔值true,在【offpayload】栏输入布尔值false,在【topic】栏输入属性值为【】,在【name】栏输入PLC控制通断,如下图所示。


打开【finscontrol】节点,在【connection】选中配置好的IP地址,在【outputproperty】选中属性值为【】,在【command】栏选中【readcpuunitstatus】,如下图所示。



我们可以通过控制通断来连接与断开PLC连接,如下所示。



当控制通断关闭时PLC连接,控制通断打开时PLC断开连接。

资源地址:/1819.html

免责声明:本文章如果文章侵权,请联系我们处理,本站仅提供信息存储空间服务如因作品内容、版权和其他问题请于本站联系