Delphi如何通过LAN口与单片机进行通讯?(100分)

  • 主题发起人 主题发起人 bf918
  • 开始时间 开始时间
B

bf918

Unregistered / Unconfirmed
GUEST, unregistred user!
最近要开发一个应用程序,简单的说就是计算机与单片机利用LAN口进行通讯,
因为对网络编程了解甚少,请高手指点,应该怎样实现,通过什么方法或控件来实现通讯呢?
 
我记得有这样的设备,把LAN口转化成串口通讯。我觉得你可以考虑。
 
我前段时间做过类似项目,但是下位机用了集成TCP/IP协议的芯片,可以直接用TCP/IP协议进行数据交换。如果下位机没有TCP/IP协议,就需要自己约定协议,比较复杂了就。
 
下位机如果有网口,那就不用说了,TCP/IP通讯,socket完成.如果下位机只有串口,就用串口转TCP的转换器,200元一个,转换器可以设IP地址,波特率等属性,当然肯定也支持SOCKET通讯,通过管理软件设置每个转换器的属性.
 
nport 好像可以实现
 
都是高手,长见识了
 
转换成串口不可行,本来用LAN口就是因为他比串口传输速率快,
下位机是带TCP/IP协议的,可是在请高手指点一下具体应该如何通讯?
如果用socket完成,我不大明白,socket是不是需要客户端阿,我怎么能在下位机安装客户端程序?还是下位机的TCP/IP 协议中就包含socket?
 
做过此类项目的高手,能否把通讯的源代码发给我一份?谢谢
jianghaifeng.jl@163.com
 
不用安装客户端软件,下位机是支持socket的,你只需要对下位机属性作好设置就行了,主要是IP地址及端口号,还要看是你双向通讯还是单向通讯.而你的后台程序就可以将下位机当一台pc来处理.
 
网络通信与串口通信很相近的,只不过使用的控件不一样,用indy的tcp控件就可以实现了,网上有很多例程,如果你做过串口程序的话,你只要简单的移植一下就可以了,实现的方法差不多的。
 
哦,也就是说,我把下位机的IP地址及端口号设置好,我在上位机的indy的tcp控件编写一个应用程序就OK了,而下位机如果安装有TCP/IP协议的话,就可以直接通讯了是这样么?
另外我还像请教一下,如果用于工业控制和采样数据高速传输的话,用哪种控件(或协议)能保证不会使数据丢失或错乱?
 
挺多的,如果不决的麻烦的话,mobus协议比较适合工业环境
 
同意 竹本无心的说法,只要设置一下就行了.PC机应用程序可以作为服务器也可以作为CLIENT.
 
可以考虑使用串口服务器,将LAN转串口(RS232/RS422/RS485)进行通信,
协议可以走MODBUS协议,这样的好处是,适合工业环境,成本低。
(编程也比较简单)
 
是的 ,我们公司就用的串口服务器,很好用,到目前也稳定
 
后退
顶部