此文章将介绍如何使用组态王软件与M系列模块进行连接。
一、实验准备
需要准备的设备有:M1001和M2101模块,以及一个SDS-1011转换器。
图 1 试验设备
因为实验中要用到两个模块,所以在使用组态王与硬件连接时首先要修改每个模块的ID号,这样组态王软件才能在添加设备时对它们作出区分。
这里要强调的是,我们在使用M Manger软件修改模块的ID号时,每个模块一定要单独进行改动。关于设备的连线情况以及如何修改ID号,大家可以参考我们制作的M系列视频,之后我们也会陆续将文档上传,在这里就不详细说明了。
图 2 之前视频内容
另外要注意的一点是,在改变模块ID号后就应该把M Manger软件关闭,否则计算机上的相关串口会一直被M软件占用。
二、使用组态王与M1001连接
在完成以上准备工作后,就能在组态王上开始创建工程了。打开组态王软件,在工程管理器页面点击新建,软件会弹出一个新建工程向导页面,跟随向导程序,就可以完成新工程的建立。
图 3 新建工程
我们来演示一下。首先要选择的是工程所在目录,默认新建工程的路径是放在系统桌面上的,点击浏览则可以修改工程路径。在实验中我们将工程放在example文件夹下。
图 4 修改工程路径
点击下一页,这页是要我们为新建工程命名并为它做一个简单描述。我们把工程名称叫做测试,在工程描述中填写:M系列模块的简单测试。
图 5 工程描述
点击完成,软件会提示我们是否将新建的工程设为当前工程,选择“是”就可以了。
图 6 完成工程新建
双击我们刚刚新建的工程进入开发系统,将弹出的页面关闭。点击文件列表中的设备选项
图 7 点击设备
鼠标双击右侧的新建。
图 8 点击新建
在出现的向导界面中选择PLC。
图 9 选择PLC
然后选择莫迪康的ModbusRTU,选择COM。
图 10 莫迪康—PLC—COM
点击下一页,将设备命名为M1001
图 11 设备命名
在选择与设备连接的串口时
图 12 选择连接串口
我们可以到M系列软件中查看
图 13 在M软件中查看串口
也可以在电脑设备管理器的端口中查看模块使用的串口
图 14 在设备管理器查看串口
这里我们选择COM3。
图 15 选择串口
点击下一页,需要我们为安装的设备指定地址,这里填写一开始为模块设置的ID号就可以了。
图 16 确认模块地址
点击下一页,此界面的选项不做改变,保持默认即可。
图 17 保持默认
点击下一页,检查一下我们的设备信息是否正确。点击完成,这样设备就设置好了。
图 18 查看设置
现在我们可以测试一下设备和软件是否可以正常通讯。右键设备,点击测试。
图 19 测试设备
在出现的页面中选择设备测试,在寄存器中输入0001,数据类型选择Bit。点击添加,点击读取。如果能够看到软件读取的数据,就说明它们之间已经可以进行通讯了。
图 20 设备通讯
这里有一个疑问,为什么寄存器、数据类型要这样设置呢?模块的用户参考手册给出了答案。进入官网,打开手册,找到M1001远程IO模块Modbus映射表。在这张表上可以看到继电器0的地址是:0001,也就是我们在软件上需要输入的寄存器地址。又因为继电器只有开、关两种状态,所以数据类型选择Bit,这种数据类型只有0或1。
图 21 寄存器地址
接下来进行数据库的设置,进入数据词典。
图 22 设置数据词典(一)
在它右侧的变量名中双击新建,将变量名命名为M1R0,变量类型为I/O离散。这个变量类型就对应着继电器的开和关两种状态。
图 23 设置数据词典(二)
连接设备选择M1001,寄存器写00001,数据类型选择Bit,读写属性选择只写。因为我们只需要控制继电器的通断就可以了。点击确定,这个变量就设置完成了。
图 24 设置数据词典(三)
再次双击新建,软件会自动为新建变量排序并且寄存器地址也会自动后延。
图 25 设置数据词典(四)
因为M1001模块有4个寄存器,所以要新建4个变量。接着添加M1001模块上的DI(数字输入)相关的变量。双击新建,变量名设置为M1DI0,变量类型还是I/O离散,连接设备不变,
图 26 设置数据词典(五)
寄存器根据用户手册填写地址为10001,
图 27 寄存器地址
数据类型选择Bit,读写属性选择只读。因为我们只需要知道,DI端口输入的是高电平还是低电平就可以了。
图 28 设置数据词典(六)
根据模块的接口,我们需要建立6个这样的变量。
图 29 设置数据词典(七)
全部新建完成后,我们就需要设置它的画面内容。点击画面,点击新建。
图 30 新建画面
将画面命名为M系列,点击确定,进入画面设置窗口
图 31 设置画面窗口
在工具箱中选择打开图库,在弹出的图片管理器中选择开关。大家可以在这个图库中选择自己喜欢的样式,鼠标双击它,就可以在画面窗口添加了。
图 32 画面设置
同时我们可以选中这些图标,将其简单排布一下。接着添加六个指示灯图标,以对应模块上的六个DI端口。然后为画面添加一个面板,并将它命名为M1001,调整字体大小,最后将画面锁定,这样布局就完成了。
图 33 完成画面布局
接下来要进行的是动画连接的内容,鼠标左键双击图标或者鼠标右键点击图标,在弹出的复选框中选择动画连接,都会出现向导页面。
图 34 动画连接(一)
点击页面中变量名旁的问号(?)按钮
图 35 动画连接(二)
为开关图标选择M1Rx相关变量,为指示灯图标选择M1DIx相关变量。点击确定,动画连接就建立成功了。
图 36 动画连接(三)
如此这般将各图标都建立完成后,点击文件,点击全部存保存设置。
图 37 动画连接(四)
回到工程浏览器页面,点击VIEW进入运行系统界面。
图 38 运行动画
点击画面选择打开,选择需要打开的画面点击确定,就能运行我们刚刚设置的画面并通过它控制M1001模块。
图 39 选择动画
我们实验一下,点击开关图标,可以明显听到模块内继电器的开关动作。使用导线,将任意DI端口与DGND短接,都可以看到画面中的指示灯会做出相应改变。
图 40 动画运行
关于M1001模块的设置已经完成了,关闭画面。
图 41 关闭画面
三、使用M2101与组态王连接
接下来我们开始设置模块M2101的相关内容,首先新建一个设备,设备型号还是选择PLC——莫迪康——ModbusRTU——COM。
图 42 新建设备
设备名称为M2101,串口依旧选择COM3,指定地址为2,其他均不变。
图 43 建立设备连接
设备新建完成后,设置数据词典的相关内容,将新建的变量名为M2IN0,变量类型选择I/O整数。连接设备选择M2101,寄存器的地址填写需要参考用户手册。
图 44 选择寄存器地址
在M2101模块的Modbus映射表上,我们可以看到IN 0通道的寄存器地址是30101。
图 45 寄存器地址
将其写入软件中同时手册中说明,寄存器的返回值是16位整型数据且是有符号的,所以数据类型选择SHORT,变量类型也对应着我们刚刚选择的I/O整数。另外当模块上的接口没有热电偶接入时,其返回值是-2713,所以我们可以将变量中的最小值改为-3000,最小原始值也要改为-3000。这里的最小(大)值是指:变量在现实中表达的工程值的大小,如:压力、温度等。而最小(大)原始值是指:采集设备中寄存器数字量的最小(大)值。
图 46 变量设置
根据模块上的接口,我们要添加从M2NI0~NI7这八个变量名。全部建立完成后我们开始设置软件的画面。为了方便观察,就把两个模块的动画连接放在一个画面当中了。在画面中放置8个文本,将文本排列整齐,并添加画板命名为M2101。
图 47 添加画面
然后为每个文本按顺序添加动画连接,因为我们需要输出M2101模块的温度值,所以选择模拟值输出。
图 48 动画连接(一)
在弹出的页面中点击表达式旁的问号(?)按钮
图 49 动画连接(二)
选择相应变量名。
图 50 动画连接(三)
输出格式设置整数位为5,小数位为2,显示格式为十进制。由用户手册可知,当返回数据为2483时,表示温度为248.3℃,而实际温度为24.83℃,所以我们要将显示值再除以10,直接在表达式中直接输入“/10”就可以了。
图 51 动画连接(四)
点击确定,点击确定,这样就设计好了。其它文本的动画连接也是这样设置。全部完成后,点击文件选择全部存。
将K型热电偶连接到M2101模块上,进入到运行系统中看看能否显示温度值,打开画面我们发现,软件画面没有正确显示M2101的信息,但M1001依然受到控制。说明软件和模块的连接没有问题,这时我们关闭页面,退出运行系统,再次打开VIEW,打开刚才的画面。这时软件就能正常显示模块信息了。
图 52 M2101动画效果
最后补充一点,如果大家想要使用组态王与M2002模块连接的话,数据类型就要选择UNSHORT,因为这个模块的数据类型是无符号的16位整型数据。
图 53 补充