打印

请教chunyang老大,关于UPS通信问题

[复制链接]
2218|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
happystar|  楼主 | 2007-4-2 19:44 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我现在做一个通信服务器,包含2个UPS(在线和后备)和令一些通信设备。那些通信设备是我用MODBUS RTU做的,所以用485连上就可以了。
但是这个UPS我可真不了解啊,通信协议看了半天感觉它好象MODBUS ASCII模式的,但不属于MODBUS的。例如报文如下:
208.4 140.0 208.4 034 59.9 2.05 35.0 00110000

我现在的问题是:服务器把UPS采集到的数据放在缓冲里,那么要和后台进行MODBUS通信该怎么办呢?难道我把以上那堆数据直接送上就可以么?
我现在打算和后台进行MODBUS RTU通信呢?难道还另外把UPS进行ASCII模式么?
想不通,请教chunyang,多谢!
顺便再问一个:扩展串口哪个芯片比较常用的?

相关帖子

沙发
chunyang| | 2007-4-2 20:28 | 只看该作者

报文看不出什么规范

要看其说明资料。如果要在同一线路上互连的话,你得确定UPS和RTU在通讯上不会彼此冲突,如果可以保证这一点,同时用两套协议进行分时通讯是可以的,如果要保证实时性的话,可以用双线路方案。
串口扩展最经济的硬件方法是利用带串口的低管脚数MCU,与主机间可以并行通讯或模拟SPI等接口进行互连。其它硬件方法有利用原生串口芯片或一扩三串口片,但成本高不算,主机编程工作量还可能更大,不如用MCU的灵活招数,想便宜,软件也可以模拟串口,尤其是低速串口,但处理并发通讯不合适。综合看,就你的应用而言,MCU法是最佳方案。

使用特权

评论回复
板凳
happystar|  楼主 | 2007-4-2 20:49 | 只看该作者

谢谢chunyang老大,

今天我给UPS厂家打了电话,让他们把通信协议发过来看了看。纯英文的不说,还是1996年的。又打电话问他们是否这个协议有效,他们说还有效。UPS 通信只有232方式。协议上也没说明什么问题的,所以感觉很难下手。我感觉只要是把它的数据全召唤到要做的服务器上就可以了。
我原先打算采用扩展串口的方法:把一个串口扩展4个,一个是485和其他仪器MODBUS485通信,2个用于UPS232通信。一个用于和后台MODBUS通信的。

有点不太明白你的意思:
1:“你得确定UPS和RTU在通讯上不会彼此冲突,如果可以保证这一点,同时用两套协议进行分时通讯是可以的”意思是后台软件是不是需要分时和这个服务器一会RTU通信,一会ASCII通信呢?
如果这样的话我要做的只是把UPS数据作成用于ASCII通信方式了(说明书上写明UPS数据是ASCII方式)。即使这个条件成立的话,但是具体到后台支持么?
2:“利用带串口的低管脚数MCU”我现在用的是2个串口的MCU(由于工作原因,这个已经没办法改变了),如果UPS符合MODBUS协议的话,那多好啊。(嘿嘿,可以不是的)。所以我必须用片子扩展口了,至于模拟串口,我觉得不太好实现,对于我还说调试周期也比较长的。

使用特权

评论回复
地板
chunyang| | 2007-4-3 14:28 | 只看该作者

UPS是老产品了,近年亦无什么新技术在普通产品上出现

关于你的两个问题解答:
1、以前并不知到你的UPS是什么接口,从你的描述看以为是485的,这样我前帖的内容才有意义。232就不必管它了,除非你用MCU系统将其转为485。至于后台是否支持,那看你怎么写后台软件了,能否支持由你的工作决定。
2、已有两个串口应该够用了,一个对付RTU,一个对付UPS。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

58

主题

409

帖子

1

粉丝