本发明涉及modbus领域,具体涉及基于Java语言的modbus协议解析方法。
背景技术:
modbus协议是一种通用的工业标准,其广泛用于控制器之间的通信互联。当在一modbus网络上通信时,每个控制器需要知道该网络中与其通信的所有控制器的设备地址,识别按地址发来的消息,决定要产生何种行动。如果需要回应,控制器将生成反馈信息并用modbus协议发出。如今Java版的modbus数据解析,大多代码繁琐,冗余增多,可读性不高,给开发人员、维护人员造成极大的困扰,且数据解析之后依然为16进制数字,无法友好的进行显示给用户进行观察。
技术实现要素:
本发明所要解决的技术问题是针对上述现有技术存在的不足,而提供一种去冗存精的基于Java语言的modbus协议解析方法。本发明采用的技术方案是:
基于Java语言的modbus协议解析方法,步骤为:
S1设置设备的设备属性值,连接设备与从机;
S2从从机中获取原始数据;
S3将获取的原始数据按照设备属性值进行分类,再根据设备属性值类型分别采用线圈解析方法或离散量线圈解析方法或寄存器解析方法进行解析;
S4解析后获得的数据存入nosql类型的redis数据库中,保存数据线程按照频率定时搜查redis的数据,然后存入MySQL数据进行最终保存ÿ