埃里克•Wetjen MathWorks
Modbus Explorer应用程序可以让你读写数据到任何Modbus®无需编写MATLAB的设备®代码。用这个
我们将演示如何使用该应用程序设置与单击Koyo可编程逻辑控制器(PLC)的Modbus通信。控制器通过两个保持寄存器和3个线圈/开关进行编程。保持寄存器设置为计数器。我们将演示如何使用应用程序更改开关值,从而打开和关闭计数器。在实时绘图中可以很容易地查看我们的更改的效果,它显示存储在计数器寄存器中的值。
在演示的最后,我们将展示如何自动生成一个MATLAB实时脚本,它可以作为
在这个视频中,我们将演示如何使用Modbus Explorer应用程序。Modbus Explorer应用程序,包括仪器控制工具箱,让您读写数据到任何Modbus设备,而无需编写MATLAB代码。通过这个应用程序,您可以配置Modbus通信,读取和写入Modbus寄存器,查看寄存器数据的活图,并自动生成MATLAB活脚本。
首先,我们进入MATLAB toolstrip上的Apps选项卡,然后单击Modbus Explorer图标。
下一步是配置应用程序。在我们这样做之前,我们需要决定我们要连接到什么。
在我的办公桌上,我点击了Koyo可编程逻辑控制器(PLC),我可以使用Modbus与之通信。该PLC和Modbus Explorer应用程序支持通过Modbus TCP/IP和Modbus串行(RTU)进行通信。对于本演示,我们使用串行端口,因此我们将使用Modbus串行端口进行连接。金宝app
要建立连接,我们需要添加Modbus设备,并从设备选项卡中选择Modbus串行。我的PLC在COM3上,波特率是38400,奇偶校验是奇数。我可以使用此设置窗口更改波特率和奇偶校验的默认设置,以匹配我的设备。在保存配置之前,应用程序会要求您从设备上的一个寄存器读取数据。我知道我的PLC设备在地址16385有一个线圈。如果单击“读取”,可以看到该值设置为1。现在,我只需单击“确认参数”即可完成设备的设置。
我可以通过单击“插入”添加其他线圈和保持寄存器。我的PLC在地址16386和16387处有两个附加线圈。我还有两个持有登记簿,地址分别为45058和45057。现在让我们把它们全部加起来。现在,如果我们点击resume reads,我们可以看到dats是从这些寄存器中读取的。现在我们可以导出这个寄存器表,这样下次运行MATLAB时就不必设置寄存器了。如果我们关闭MATLAB,我们所要做的就是使用import导入这个寄存器表,我们就可以开始了。您可以在这里看到,为了方便起见,我在这个版本的寄存器表中也重命名了寄存器
那么,我们如何与设备进行互动交流呢?显然,我们可以读取定义的内存位置的值,如图所示和底部的图中所示。我们还可以使用写寄存器窗格来更改值。在我们改变写寄存器的值之前,让我稍微解释一下在PLC上运行的程序。
PLC之前已经使用PLC供应商的软件编程。我们下载了一个简单的程序,将三个线圈开关与两个保持寄存器关联起来。保持寄存器被配置为计数器。当线圈1(16385)和线圈3(16387)高时,保持寄存器1将开始计数。地址45058的保持寄存器2被设置为在保持寄存器1 5秒后开始计数。我们来测试一下。我将通过写一个“1”将第三圈设置为高,然后我们将看到发生了什么。你可以在图中看到Counter 1已经开始(紫色线),现在5秒后,你可以看到green线(Counter 2)已经开始。您还可以在表中看到相同的信息,读取值现在随时间递增。
最后一步,我们可以生成一个MATLAB脚本,如果我们正在构建一个更大的程序,它可以帮助我们开始。如果单击“生成脚本”,将自动生成一个MATLAB live脚本。在这里,我们可以看到如何使用MATLAB代码读取和写入PLC上的寄存器。
所以,总结一下,使用Modbus Explorer应用程序,你可以:
你也可以从以下列表中选择一个网站:
选择中国站点(中文或英文)以获得最佳站点性能。其他MathWorks国家/地区网站未针对您所在地的访问进行优化。