迪文DGUS屏与PLC通讯浅析
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《迪文DGUS 与PLC 通信浅析》 姚建真
北京迪文科技有限公司,北京,海淀
摘要:介绍了DWIN DGUS 屏与PLC 设备通过DWIN OS 建立通信的基本方法。
以常见的松下PLC——
Panasonic FP-X0 L40MR 为例说明DWIN OS 二次开发的实现过程。
关键词:DGUS 屏;DWIN OS ;二次开发;PLC ;实现过程。
Abstract:
Introduce the DGUS LCM and Design method of secondary development with DWIN
OS. Based on the implementation process and design method, audience will easily understand how to realize the communication between DGUS and PLC.
Key words: DGUS LCM ;Secondary Development; PLC; DWIN OS
一、引言
在现代工业自动化系统中,可编程控制器(PLC )得到了广泛的应用。
PLC 作为通信控制单元其通信原理基本是一致的,均包含逻辑运算单元、输入输出单元等基本结构,绝大部分PLC 产品的通信支持标准Modbus 协议,有些PLC 产品也有自身的协议。
无论是标准的Modbus 协议还是自有协议,DWIN OS 二次开发平台的微指令集均能友好支持。
本文简单介绍DWIN OS 采用松下自有PLC 通信协议进行操作的基本思路。
对于用户来说,在使用DGUS 屏的时候,只要在DGUS 屏当中进行DWIN OS 的简单编程,就能完成PLC 的状态读取和控制操作,单边开发即可,不需要PLC 端的开发。
二、DWIN OS 开发介绍
实现方法:
1. 将用户程序编译处理后生成23.BIN 文件
2. 下载到DGUS ,在CONFIG.TXT 文件中配置:
● 启用用户软件:RUN_DWIN_OS ● 禁止用户软件:STOP_DWIN_OS
三、DWIN OS 编译环境介绍
《DWIN OS Builder 》软件,提供设定标志位、断点、在线调试等常规开发功能,开发方式友好,并且提供指令格式说明,方便用户对DGUS 屏二次开发。
四、松下PLC 通信协议
松下PLC 数据传输采用ASC Ⅱ码的形式,由PLC 对指令自动进行相应响应。
松下PLC 指令格式,如下:
五、功能实现
以松下PLC 写入单个触点的状态信息指令WCS 为例,描述如何利用DWIN OS 完成该功能。
1. WCS 指令格式:
● WCS 指令表示:写入单个触点信息; ● R 触点代码表示:内部继电器;
2. BCC 码生成过程:
松下PLC 校验码是将指令中的各个ASCII 字符的16进制(00~FF)进行异或求和后生成的,该校验码也以两个ASCII 码表示。
具体指令:“%01#WCSR0001122”
校验数据范围
3. 寄存器规划:
4. DWIN OS 微指令程序编制
1)
将校验数据存储到OS 寄存器 DWIN OS 对于寄存器存储数据,有两条经常用到的指令LDBR 和LDWR ,分别是往寄存器存储8bit 立即数和16bit 立即数。
右边的代码使用LDBR 完成用户数据的存储,对于初学者具有很好的可读性。
DWIN OS 具有很强的灵活性,用户如果对于伪指令代码很熟悉的话,可以采用查表的方式将一组数据赋值给一组寄存器,例如将右边的代码使用查表方式赋值,代码如下:
2)
将校验数据进行异或(XOR )计算,生成BCC 码
DWIN OS 提供异或校验和计算指令SUMXOR ,指令格式为SUMXOR R#S,R#T,R#N 。
R#S:输入的寄存器组;R#T:输出的1字节异或结果,8bit ;R#N :序列长度寄存器,8bit 。
通过DWIN OS 的SUMXOR 指令,可以将起始寄存器自R#S 开始长度为R#N 的一组寄存器中存储的数据进行异或校验和。
3)
将BCC 码由HEX 数据转换成ASC Ⅱ数值,并按照高位和低位分别存储
DWIN OS 二次开发代码提供用户两条指令,用以完成
HEX
与ASC之间的转换,指令分别为HEXASC和ASCHEX。
关于<MOD>=30H,表示30H=00110000B,前4位表示整数位数,后4位表示小数位数。
4)串口发送指令
DWIN OS针对串口操作提供一组串口指令,具体如下:
• COMTXI串口直接发送
• COMSET COM1配置
• RDXLEN 检查COM0_Rx_FIFO
• RDXDAT 读取COM0_Rx_FIFO
五、结束语
无论标准协议还是厂商自有协议,DGUS二次开发平台提供的微指令代码均能很好的进行处理。
本文提供的解决思路,可以满足用户对于PLC、Modbus设备采用DGUS屏进行读取和写入的操作,单边软件开发的方式,省却了用户MCU的工作量。
DWIN OS的微指令代码的灵活组合,方便用户将自身产品和DGUS进行结合,提出更具有创新性的产品应用。
参考文献:
[1] 松下电工(中国)有限公司.通信协议MEWTOCOL
[2] 北京迪文科技有限公司.基于DGUS的DWIN OS开发指南.2012
[3] 北京迪文科技有限公司.迪文DGUS屏开发指南.2012。