本文档侧重于从系统整体方案上(例如硬件选型、软件方案选型等)指导用户完成串口转TCP/IP的方案选型。如果是产品型号的选择,请参考《串口转以太网产品选型指南》。
1.成品和内嵌模块
图 1 NETCOM2000成品与ZLSN2000内嵌模块
成品与内嵌模块如图 1所示。成品一般称之为串口服务器,内嵌模块称之为串口转TCP/IP模块。
选择内嵌模块可以将一个类似DIP芯片的电路板插接到用户电路板上,将其中4根引脚连接网口RJ45,其中2根引脚连接用户MCU串口UART引脚,即可实现用户系统的网络化升级。该方案使得用户系统的整体性好,且内嵌模块价格比成品要低很多,如果用户自行设计设备或者串口设备的网络化改造可以使用该方案。
如果用户使用工程上应用,购置的某些串口设备需要联网,那么内嵌模块一般那不太适合,此时可以使用NETCOM2000等串口服务器。
2.虚拟串口、Socket编程、使用DLL库、Modbus TCP
串口转TCP/IP转换器解决的是RS232/485/422串口到网口的转化,那么转化为网口之后,用户软件如何和转换器通信呢。卓岚转换器的软件方案有4种:虚拟串口、Socket编程、使用DLL库、Modbus TCP。
虚拟串口,就是说用户在使用TCP/IP串口转换器后无需修改原有的软件(串口设备应该有一个在计算机上运行的与设备通信的软件),使用卓岚的ZLVircom程序可以虚拟出类似COM5、COM6的虚拟串口,然后通过软件将COM5、COM6和制定的转换器绑定。之后,用户软件打开COM5、COM6就同原来打开COM1等硬件串口一样使用了。使用虚拟串口对于已有串口软件的用户是可以考虑的,但是对于还未设计软件的用户,建议使用Socket编程,因为Socket编程比虚拟串口的效率更高,也无需安装驱动。
Socket编程,就是利用Windows/Linux等操作系统上的开发环境开发网络程序,直接和TCP/IP转换器通信。由于卓岚ZLSN模块或者NETCOM转换器都遵守标准的TCP IP协议所以和任何socket接口的网络编程程序通信。协议就是透明传输,即网络发送什么串口就收到什么,反之亦然。用户可以选择VC、VB、Delphi、C#等开发环境提供的Socket编程,例如向处于服务器模式的转换器连接就是调用Connect函数,参数就是转换器的IP和端口。
使用DLL库,卓岚提供的DLL是使用Socket编程封装对ZLSN模块基本操作的动态连接库。用户可以使用DLL库实现对ZLSN模块的搜索、参数设置、通信功能。与Socket编程相比,DLL库的功能更为强大,也更方便调用。但是对于熟悉网络编程的用户来说,用户还是希望自己用Socket编程设计程序,也不想自己的软件带一大堆DLL。
Modbus TCP,就是用户软件使用标准的Modbus TCP协议,卓岚的ZLSN2040串口转TCP/IP可以直接将网口的Modbus TCP数据流转化为Modbus RTU数据流,在转换器的串口可以以Modbus RTU方式和用户的串口设备通信。转换器可以作为Modbus网关使用,实现标准Modbus TCP软件访问标准的Modubus RTU设备。
3.局域网应用还是internet应用
如果用户系统没有跨internet,而只是在局域网内进行监控,那么要简单一些。如果需要跨inernet当然卓岚的ZLSN系列模块和NETCOM串口服务器也是可以的,因为它支持通过域名访问主机,另外跨inernet应用可能还需要设置DDNS和路由器的NAT映射。具体可以咨询卓岚工程师。
|