一种基于modbus协议的氮吹仪控制系统
技术领域
1.本实用新型涉及氮吹仪控制技术领域,尤其是指一种基于modbus协议的氮吹仪控制系统。
背景技术:2.市面上的相关仪器普遍使用modbus总线协议来做通信协议,虽然,modbus协议的物理层的传输速率较慢,无法支持热插拔技术,不支持星型和树型的网络拓扑结构,但是,modbus协议简单、可靠。对于氮吹仪这种强主站、模块少的仪器,采用一种即简单又可靠的通信协议比较关键,我们选择基于modbus的通信协议来开发本产品。
技术实现要素:3.本实用新型的目的在于提供一种基于modbus协议的氮吹仪控制系统,该系统的通信稳定可靠,简单而经济。
4.为达成上述目的,本实用新型的解决方案为:
5.一种基于modbus协议的氮吹仪控制系统,包括hmi人机界面、主控制模块、注射器模块、modbus总线,所述的hmi人机界面包括液晶屏,串口通信模块;所述的主控制模块包括控制用的单片机、控制用的485收发器, usb转串口模块、非易失性存储模块,所述的注射器模块包括注射用的单片机,注射用的485收发器,运动驱动模块,步进电机以及磁编码器;所述的hmi人机界面的串口通信模块与所述的主控制模块的usb转串口模块之间通信连接,所述的主控制模块的控制用的485收发器与所述的注射器模块的注射用的485收发器通过modbus总线通信连接。
6.进一步,所述的步进电机以及磁编码器包括旋转阀步进电机以及其磁编码器,注射筒步进电机以及其磁编码器。
7.进一步,初始信息配置:如果是全新系统,需要配置初始信息,通过人机界面配置主控模块、注射器模块的寄存器参数初始信息写入完成,然后保存在主控制模块的非易失性存储模块。
8.进一步,上电流程:hmi人机界面和主控制模块、注射器模块分别上电,主控制模块上电成功后,会提取存储在非易失性存储模块中的信息来初始化所述的主控制模块的控制用的收发器和所述的注射器模块的注射用的 485收发器,注射器模块向主控制模块发送地址节点,主控制模块通过判断地址节点来判断模块是否在线,并屏蔽没有发送地址节点的异常模块,主控制模块向注射器模块发出寄存器写入指令,并判断注射器模块是否回传寄存器写入指令,如果没收到注射器模块回传寄存器写入指令,则重新判断注射器模块是否在线,如果收到注射器模块回传寄存器写入指令,则进入初始化。
9.进一步,初始化流程:主控制模块通过modbus总线将初始化参数以寄存器写指令形式写入到注射筒模块中,注射器模块接受到后返回同样的指令,主控制模块判断是否接受到注射器模块回传指令,如果未接受到注射器模,则重新判断注射器模块是否在线,如果
接受到注射器模块回传指令,则进入氮吹仪工作流程。
10.进一步,氮吹仪工作流程:初始化流程后,用户在hmi人机界面上编辑好氮吹仪工作所需的方法,如氮吹/水浴方法,通过串口通信模块下载到主控制模块的usb转串口模块,主控制模块的控制用的单片机解析氮吹/水浴后,把注射器模块的动作指令通过写寄存器指令形式发送,由主控制模块的控制用的485收发器通过modbus总线向注射器模块的注射用的485收发器发送,注射器模块执行相关的指令。
11.进一步,所述的注射器模块执行相关的指令,具体包括注射用的单片机解析信息,并将信息发送到运动驱动模块,运动驱动模块控制步进电机做出相对应的动作并且采集磁编码器信息判断步进电机位置,步进电机动作结束后,注射器模块会通过注射用的485收发器回传信息,主控制模块通过判断注射器模块是否回传同样的指令,保证主控制模块指令的送达率。
12.本实用新型与现有技术相比:
13.1、相比之前的串口通信,modbus可支持多个从站通信。
14.2、modbus采用差分信号,有较强的抗干扰能力。
15.3、通过寄存器配置,modbus协议可以快速增加模块。
附图说明
16.图1是本实用新型的一种基于modbus协议的氮吹仪控制系统的总成图;
17.图2是本实用新型的一种基于modbus协议的氮吹仪控制系统的初始化及工作流程图。
具体实施方式
18.以下结合附图及具体实施例对本实用新型做详细的说明。
19.如图1所示,一种基于modbus协议的氮吹仪控制系统1,包括hmi人机界面2、主控制模块3、注射器模块4、modbus总线5,所述的hmi人机界面2包括10寸液晶屏,串口通信模块;所述的主控制模块3包括控制用的单片机(stm32f103)、控制用的485收发器(s3485),usb转串口模块 (ch340)、非易失性存储模块(24c128),所述的注射器模块4包括注射用的单片机(stm32f103),注射用的485收发器(s3485),运动驱动模块41 (tmc5160),旋转阀步进电机以及磁编码器,注射筒步进电机以及配套磁编码器,所述的hmi人机界面2的串口通信模块与所述的主控制模块的usb 转串口模块(ch340)之间通信连接,所述的主控制模块3的控制用的485 收发器(s3485)与所述的注射器模块的注射用的485收发器(s3485)通过modbus总线通信连接。
20.如图1、2所示,初始信息配置:如果是全新系统,需要配置初始信息,通过人机界面2配置主控模块2、注射器模块3的寄存器参数初始信息(如总线速率、周期时间、心跳间隔)写入完成,然后保存在主控制模块3的非易失性存储模块(24c128)。
21.如图1、2所示,上电流程:hmi人机界面2和主控制模块3、注射器模块4分别上电。主控制模块3上电成功后,会提取存储在非易失性存储模块(24c128)中的信息来初始化所述的主控制模块3的控制用的485收发器(s3485)和所述的注射器模块4的注射用的485收发器(s3485),注射器模块4向主控制模块3发送地址节点,主控制模块3通过判断地址节点来判
断模块是否在线,并屏蔽没有发送地址节点的异常模块,主控制模块3向注射器模块4发出寄存器写入指令,并判断注射器模块4是否回传寄存器写入指令,如果没收到注射器模块4回传寄存器写入指令,则重新判断注射器模块4是否在线,如果收到注射器模块4回传寄存器写入指令,则进入初始化。
22.如图1、2所示,初始化流程:主控制模块3通过modbus总线将初始化参数(如电机速度,电机行程等)以寄存器写指令形式写入到注射筒模块4中,注射器模块4接受到后返回同样的指令,主控制模块3判断是否接受到注射器模块4回传指令,如果未接受到注射器模块4回传指令,则重新判断注射器模块4是否在线,如果接受到注射器模块4回传指令,则进入氮吹仪工作流程。
23.如图1、2所示,氮吹仪工作流程:初始化流程后,用户在hmi人机界面2上编辑好氮吹仪工作所需的方法,如氮吹/水浴方法,通过串口通信模块下载到主控制模块3的usb转串口模块(ch340),主控制模块3的控制用的单片机(stm32f103)解析氮吹/水浴后,把注射器模块4的动作指令通过写寄存器指令形式发送,由主控制模块3的控制用的485收发器 (s3485)通过modbus总线4向注射器模块4的注射用的485收发器(s3485) 发送,注射器模块执行相关的指令,具体包括注射用的单片机(stm32f103) 解析信息,并将信息发送到运动驱动模块(tmc5160)41,运动驱动模块 (tmc5160)41控制步进电机做出相对应的动作并且采集磁编码器信息判断步进电机位置(步进电机包括旋转阀步进电机和/或注射筒步进电机),步进电机动作结束后,注射器模块4会通过注射用的485收发器(s3485)回传信息,主控制模块3通过判断注射器模块4是否回传同样的指令,保证主控制模块指令的送达率。
24.本实用新型相比之前的串口通信,modbus可支持多个从站通信,modbus 采用差分信号,有较强的抗干扰能力,比较适合配置简单小型经济型的氮吹仪。
25.以上所述仅为本实用新型的较佳实施例,并非对本案设计的限制,凡依本案的设计关键所做的等同变化,均落入本案的保护范围。